mysql 每个分类取几条_MySQL 获取所有归类和每个分类的前几条记录

MySQL 获取所有分类和每个分类的前几条记录 比如有文章表 Article(Id,Category,InsertDate) 现在要用SQL找出每种类型中时间最新的前N个数据组成的集合 SELECT A1.*FROM Article AS A1INNER JOIN (SELECT A.Category,A.InsertDateFROM Article AS ALEFT JOIN A

MySQL 获取所有分类和每个分类的前几条记录

比如有文章表 Article(Id,Category,InsertDate)

现在要用SQL找出每种类型中时间最新的前N个数据组成的集合

SELECT A1.*

FROM Article AS A1

INNER JOIN (SELECT A.Category,A.InsertDate

FROM Article AS A

LEFT JOIN Article AS B

ON A.Category = B.Category

AND A.InsertDate <= B.InsertDate

GROUP BY A.Category,A.InsertDate

HAVING COUNT(B.InsertDate) <= @N

) AS B1

ON A1.Category = B1.Category

AND A1.InsertDate = B1.InsertDate

ORDER BY A1.Category,A1.InsertDate DESC

?

ps: ?@N 就是要取多少条

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!


版权声明:本文为weixin_42588555原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。