SQL Server中Group By、Having和Where子句的执行顺序?

新手上路,请多包涵

当我们使用 GROUP BYHAVINGWHERE 子句时,我只是对 SQL 查询的执行顺序感到困惑。哪个先被执行?顺序是什么?

原文由 Aarti 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 485
2 个回答

为了:

FROM & JOIN 确定和过滤行

WHERE 行上的更多过滤器

GROUP BY 将这些行组合成组

HAVING 过滤器组

ORDER BY 排列剩余的行/组

限制 剩余行/组的过滤器

原文由 KM. 发布,翻译遵循 CC BY-SA 3.0 许可协议

  • 选择
  • 联接(内、左、右、全外联接)
  • 在哪里
  • 通过…分组
  • 拥有
  • 订购方式
  • 限制;

原文由 trwavx 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进