Si desea obtener lo más nuevo para cada ItemID
correspondiente al Type
selección, puede hacer una subconsulta para devolver primero el precio más nuevo y luego unirse a la tabla original para mostrarlo en el resultado final. A continuación se muestra la consulta de ejemplo:
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;
Puede ver la demostración aquí:https://www.db-fiddle.com/ f/7YCaiLYz9DE11wnijWEdi/3