0

Решить задачу

С учетом приведенной схемы БД автомобильного дилера с таблицами stock (выставленные на продажу машины), shop (дилерские центры), mark (модели), manufacturer (производитель автомобилей), вывести одним запросом всех производителей автомобилей (manufacturer.name), указав сколько конкретных машин выставлено на продажу в каждом дилерском центре для этого производителя в порядке убывания. Также учитывать, что для некоторых производителей может не быть записей в таблице stock, при этом данные производители также должны присутствовать в итоговой выборке. Stock - id(PK), ShopID(FK), markID(FK),quantity Shop - id(PK), name Mark - id(PK), name, manufacturerID(FK) Manufacturer - id(PK), name, country

30th Mar 2021, 3:42 AM
Макс Поляков
Макс Поляков - avatar
2 ответов
0
SELECT mf.name ,sp.name ,SUM(s.quantity) AS quantity FROM [dbo].[Manufacturer] AS mf JOIN [dbo].[Mark] AS m ON m.manufacturerID = mf.ID LEFT JOIN [dbo].[Stock] AS s ON s.ID = m.markID LEFT JOIN [dbo].[Shop] AS sp ON sp.ID = s.ShopID GROUP BY mf.name ,sp.name ORDER BY SUM(s.quantity) desc
18th Jun 2021, 2:10 PM
Serge
- 3
Привет! Покажите нам вашу попытку решения
30th Mar 2021, 6:39 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar