EchoDemo's Blogs

MySQL中碰到的问题

我把天空和大地打扫地干干净净,归还一个陌不相识的人。—-海子《黎明》

在使用group by时碰到的问题

(1)选择列表中的列无效,因为该列没有包含在聚合函数或者group by子句中。

select id,name,count(0) as cx from student group by id order by cx desc

其中name会无效,因为该列没有包含在聚合函数或者group by子句当中。也就是说:在select需要查询语句中选中的字段,必须出现在group by子句中。我们还需注意的是:group by和order by一起使用时,order by要在group by的后面。

(2)每个 group by 表达式必须至少包含一个不是外部引用的列。

select  count(0),nothing  from student group by nothing having name='echodemo'

出错的原因是因为group by语句所跟的内容一般是数据表中的字段或者数据表的表达式,因为上边的句子中在group by后边使用的是数据表中不存在的字段且也不是数据表的表达式,为外部实例,所以才会报上变得错误。


🐶 您的支持将鼓励我继续创作 🐶
-------------本文结束感谢您的阅读-------------