MYSQL  group by使用的注意事项有哪些


本文小编为大家详细介绍“MYSQLgroupby使用的注意事项有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“MYSQLgroupby使用的注意事项有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。前言:注意:本文以下内容基于 MySQL 5.7 InnoDB 数据库引擎。在 MySQL 中,所有的 SQL 查询语法要遵循以下语法顺序:selectfromwheregroup byhavingorder bylimit以上语法顺序是不能前后互换的,否则报错。比如我们不能在 group by 之后添加 where 查询语句,否则会出现如下错误:语法顺序的执行是和 MySQL 的 select 语句执行顺序相关的,select 执行先后顺序如下:from 阶段where 阶段group 阶段having 阶段select 阶段order by 阶段limit 阶段注意:其中 select 比较特殊,在进行查询语句编写时,要写在最前面,其余语法顺序要和执行先后顺序保持一致。having 和 group by 可以单独使用,如下查询所示:**当 having 单独使用时,它的作用和 where 类似,但又有细微的不同。**比如在 where 中不能使用别名,但 having 和 group by 却可以别名。咱们创建一个测试表来演示一下,建表 SQL 如下:表中的数据如下图所示:当我们使用总成绩别名 total 分别在 where 和 having 中使用时,查询结果如下:从上述结果可以看出,hav免费云主机域名ing 查询可以使用 select 中的别名,而 where 不能使用别名。 除了 having 可以使用别名之外,group by 也可以使用别名,如下图所示:where 中不能使用别名,这和 MySQL 语句执行顺序有关,MySQL 语句执行顺序如下:from 阶段where 阶段group 阶段having 阶段select 阶段order by 阶段limit 阶段也就是说,**在执行 where 查询时,select 还没执行,因此在 where 中想要使用还未执行的 select 中的别名是不行的。**那从上面的执行顺序可以看到,having 执行也在 select 之前,为什么它就可以使用 select 中的别名呢?这是因为 MySQL 在 5.7.5 之后做了扩展,允许在 having 中使用别名,官方文档中有相应的说明,如下图所示:读到这里,这篇“MYSQLgroupby使用的注意事项有哪些”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注百云主机行业资讯频道。

相关推荐: css3中的新单位vw、vh、vmin、vmax怎么使用

本文小编为大家详细介绍“css3中的新单位vw、vh、vmin、vmax怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“css3中的新单位vw、vh、vmin、vmax怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 03/18 19:46
下一篇 03/18 19:46

相关推荐