Pokud chcete pro každé ItemID
získat nejnovější odpovídající Type
výběru, můžete provést dílčí dotaz, abyste nejprve vrátili nejnovější cenu a poté se připojili k původní tabulce, aby se zobrazila v konečném výstupu. Níže je uveden příklad dotazu:
SELECT A.*
FROM ItemPrices A
JOIN ( SELECT itemid,
TYPE,
MAX(fromdate) AS mdt
FROM ItemPrices
GROUP BY itemid,TYPE ) B
ON A.itemid=B.itemid
AND A.type=B.type
AND A.fromdate=B.mdt
WHERE A.type=1
ORDER BY A.itemid;
Demo si můžete prohlédnout zde:https://www.db-fiddle.com/ f/7YCaiLYz9DE11wnijWEdi/3