Se vuoi ottenere il più recente per ogni ItemID
corrispondente al Type
selezione, puoi eseguire una sottoquery per restituire prima il prezzo più recente, quindi unirti alla tabella originale per mostrarlo nell'output finale. Di seguito sono riportate le query di esempio:
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;
È possibile visualizzare la demo qui:https://www.db-fiddle.com/ f/7YCaiLYz9DE11wnijWEdi/3