mysql数据库中一个表取分组后每组的前十条数据
表结构:
name:dtu_log
id,create_date,dtu_id
需求是按dtu_id分组,取每个dtu的前十条,sql如下:
SELECT
a.*
FROM
dtu_log a
WHERE 10 >
(SELECT
count(*)
FROM
dtu_log
WHERE
dtu_log.dtu_id = a.dtu_id AND dtu_log.Create_Date > a.Create_Date)
ORDER BY Create_Date
10代表取出的条数,
where后面跟的条件是取时间最新的前十条。
如果碰巧解决了你的问题,点个赞再走吧!
版权声明:本文为Getsunflowers原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。