Mysql
 sql >> Base de données >  >> RDS >> Mysql

Commande groupée délicate en SQL

Ce que vous devez faire est de créer un ensemble de données transitoires contenant car_brand et le prix le plus bas pour cette marque (que j'appellerai brand_price), puis REJOINDRE ces données dans votre table de voitures d'origine. Cela vous donnera l'information supplémentaire (brand_price) dont vous avez besoin pour trier les données :

 SELECT car_id, car_brand, car_model, price FROM cars C1
    JOIN (select car_brand, MIN(price) AS brand_price FROM cars GROUP BY car_brand) C2
      ON C1.car_brand = C2.car_brand
    ORDER BY C2.brand_price, C1.car_brand, C1.price