数据岗位面试题更新 2026-08-05

在一条复杂的 SQL 查询中,筛选条件(WHERE 和 HAVING)应该放在什么位置?请解释 WHERE、HAVING 和窗口函数在查询中的执行顺序及使用场景。

哈啰出行数据消费品/零售技术原理问题排查SQL

考察说明

考察 SQL 查询逻辑执行顺序及窗口函数语法理解

回答思路

  1. 正确说明 WHERE 在 GROUP BY 前过滤,HAVING 在分组后过滤
  2. 解释窗口函数在 WHERE 和 GROUP BY 之后执行
  3. 能够指出常见的 SQL 语法错误,如窗口函数中不能直接使用 WHERE 过滤
  4. 结合业务场景说明筛选条件放置位置的合理性
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。