sql >> Base de Datos >  >> RDS >> Mysql

MySQL LEFT JOIN, GROUP BY y ORDER BY no funcionan según lo requerido

Parece que es imposible para utilizar ORDER BY en un resumen GROUP BY. Mi lógica fundamental es defectuosa. Tendré que ejecutar la siguiente subconsulta.

SELECT `p`.*, `pp`.`price` FROM `products` `p` 
LEFT JOIN (
    SELECT `price` FROM `product_price` ORDER BY `date_updated` DESC
) `pp` 
ON `p`.`product_id` = `pp`.`product_id`
GROUP BY `p`.`product_id`;

Esto tendrá un impacto en el rendimiento, pero como es la misma subconsulta para cada fila, no debería ser tan malo.