MYSQL - select first 4 records for each category in a table

后端 未结 1 1679
轮回少年
轮回少年 2021-01-14 09:28

I have a table INVENTORY that has among other columns CATEGORY and UPDATED. Sorting the table by these columns is easy:

相关标签:
1条回答
  • 2021-01-14 10:18

    Very much the same as How to limit an SQL result set to not too common items

    You could try something like

    SELECT  *
    FROM    (
                SELECT  *,
                        (   SELECT  COUNT(1) 
                            FROM    INVENTORY 
                            WHERE   CATEGORY = i.CATEGORY 
                            AND     UPDATED < i.UPDATED
                        ) CountTotal
                FROM    @INVENTORY i
            ) sub
    WHERE   sub.CountTotal <= 3
    
    0 讨论(0)
提交回复
热议问题