Heim  >  Artikel  >  Datenbank  >  MySQL获取所有分类和每个分类的前N条记录

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

WBOY
WBOYOriginal
2016-06-07 17:53:071513Durchsuche

本文章给大家介绍MySQL获取所有分类和每个分类的前N条记录,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                  GROUP BY A.Category,A.InsertDate
                 HAVING COUNT(B.InsertDate)     ) AS B1 
    ON A1.Category = B1.Category 
       AND A1.InsertDate = B1.InsertDate
ORDER BY A1.Category,A1.InsertDate DESC
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn