mysql max 与 where 间的执行问题小结

吾爱主题 阅读:126 2024-04-05 13:59:47 评论:0

mysql max 与 where 间的执行问题

执行sql:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 CREATE TABLE `grades` (   `id` int (20) NOT NULL AUTO_INCREMENT,   `student_id` int (20) NOT NULL ,   `subject` varchar (20) COLLATE utf8_bin DEFAULT NULL ,   `grades` varchar (20) COLLATE utf8_bin DEFAULT NULL ,   PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE =utf8_bin; insert into `grades`(`id`,`student_id`,`subject`,`grades`) values (1,1, '语文' , '80' ),(2,1, '数学' , '89' ),(3,2, '语文' , '90' ); CREATE TABLE `student` (   `id` int (20) NOT NULL AUTO_INCREMENT,   ` name ` varchar (20) COLLATE utf8_bin DEFAULT NULL ,   PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE =utf8_bin; insert into `student`(`id`,` name `) values (1, 'xiaoming' ),(2, 'xiaohong' ),(3, 'xiaobai' );

执行结果:

执行结果1:

执行结果2:

执行结果3:

执行结果4:

执行结果5:

由此可见:

1.max是在where条件之前执行的,

2.而group by 又是在max之前执行的

3.当where 与 group by 同时出现 优先执行where条件

总结

以上所述是小编给大家介绍的mysql max 与 where 间的执行问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://www.cnblogs.com/cb-log/archive/2018/01/30/mysql_max_where.html

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容