mysql group by 组内排序
程序员文章站
2022-03-24 22:55:35
...
有数据表 comments ------------------------------------------------ | id | newsID | comment | theTime | ------------------------------------------------ | 1 | 1 | aaa | 11 | ------------------------------------------------ | 2 | 1 | bbb | 1
有数据表 comments
------------------------------------------------
| id | newsID | comment | theTime |
------------------------------------------------
| 1 | 1 | aaa | 11 |
------------------------------------------------
| 2 | 1 | bbb | 12 |
------------------------------------------------
| 3 | 2 | ccc | 12 |
------------------------------------------------
newsID是新闻ID,每条新闻有多条评论comment,theTime是发表评论的时间
现在想要查看每条新闻的最新一条评论:
select * from comments group by newsID 显然不行
下面有两种方法可以实现:
(1)selet tt.id,tt.newsID,tt.comment,tt.theTime from(
select id,newsID,comment,theTime from comments order by theTime desc) as tt group by newsID
(2)
select id,newsID,comment,theTime from comments as tt group by id,newsID,comment,theTime having
theTime=(select max(theTime) from comments where newsID=tt.newsID)
推荐阅读
-
Mysql 单表查询-排序-分页-group by初识
-
MySQL解惑——GROUP BY隐式排序
-
python pandas 组内排序、单组排序、标号的实例
-
MySQL 组提交(group commit)
-
MySQL中group by 与 order by 一起使用排序问题
-
MySQL 5.7.20 Group Relication(组复制)搭建手册
-
mysql,分组(group by)与排序(order by)同时使用
-
Mysql存储过程——通过百度坐标,查询半径内符合条件的用户以及排序后的距离
-
Mysql 单表查询-排序-分页-group by初识
-
关于MySQL与SQLLite的Group By排序原理的区别