Ci sono molte alternative per risolvere questo problema, una che consiglio è di aver unito una sottoquery che ottiene separatamente l'ultimo ID
(supponendo che la colonna sia AUTO_INCREMENT
ed ) per ogni 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
per prestazioni migliori, assicurati di avere un indice su queste colonne:ID
e store_id
.
AGGIORNAMENTO 1
se vuoi avere un limite per ogni record, usa questo sotto,
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;