Mysql Max、 Where和 Group By 三个关键字同时使用 执行顺序 | 您所在的位置:网站首页 › groupby顺序 › Mysql Max、 Where和 Group By 三个关键字同时使用 执行顺序 |
问题产生:网上查阅这三个关键词同时使用,执行顺序是什么?回答的最多的却是Max Where 两个关键字的执行顺序。并且我发现很多回答不仅如出一辙,甚至是错误的! 直接先给出结论,再做阐述 1.Where 和 Group By 同时出现,Where -> Group By(不做分析) 2.Group By 和 Max 同时出现,Group By -> Max 3.Where 和 Max 同时出现,Where -> Max 4.Max Where 和 Group By 同时出现,Where -> Group By -> Max其实第一和第二点没有什么争议,争议最大是第三点。网上很多回答是先Max 再where?真的是这样? 新建了一张test表 sql基础不牢,我们初次使用Max 和Group By 的时候。发现最后查出的数据,不是我们想要的数据。怎么都有些想不明白。我下面还是用例子来解答这个疑惑。 需求: 查询出每科分数最高的人的详细数据。如果使用下面这个SQL SELECT * ,MAX(score) FROM test GROUP BY subject查询结果 如下 同样是上面的那张表 例子: SELECT id ,MAX(id) FROM test where id = 4你们觉得这个查询结果是什么样的? 您的点赞,是我更新的动力! 如有错误,望指正 |
CopyRight 2018-2019 实验室设备网 版权所有 |