Existuje mnoho alternativ, jak to vyřešit, jednou, kterou doporučuji, je připojit se k dílčímu dotazu, který samostatně získá nejnovější ID
(za předpokladu, že sloupec je AUTO_INCREMENT
ed ) pro každé store_ID
.
SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT store_ID, MAX(ID) max_ID
FROM tableName
GROUP BY store_ID
) b ON a.store_ID = b.store_ID AND
a.ID = b.max_ID
pro lepší výkon se ujistěte, že máte index v těchto sloupcích:ID
a store_id
.
AKTUALIZACE 1
pokud chcete mít limit pro každý záznam, použijte toto níže,
SELECT ID, product_Name, store_ID
FROM tableName a
WHERE
(
SELECT COUNT(*)
FROM tableName b
WHERE b.store_ID = a.store_ID AND b.ID >= a.ID
) <= 2;