Здравствуйте. Проверьте пожалуйста правильность тестового задания
В Базе данных есть 2 таблицы:
Sales (MonthId int, RTN int, sales_rub float)
Plans (MonthId int, RTN int, plan_rub float)
Где
MonthId- Id месяца, вида 202101, где первые 4 цифры год, 2 последних – номер месяцаRTN– Id руководителя товарного направления (РТН)
Написать скрипт.
Который выведет сумму фактических продаж и плановых продаж по месяцам(MonthId) за 2021 год. При этом план может быть не по всем РТН, а продажи есть у всех РТН, по которым есть план.
Решение
SELECT s.Monthid,SUM(s.sales_rub), SUM(p.planes_rub)
FROM sales AS s
LEFT JOIN Plans AS p ON s.Monthid = p.Monthid AND s.Rtn = p.Rtn
WHERE s.Monthid LIKE'2021%'
GROUP BY Monthid ;
Заранее спасибо
Ответы (1 шт):
Автор решения: alex
→ Ссылка
Попробуйте так
SELECT s.Monthid, SUM( s.sales_rub ), SUM( p.planes_rub )
FROM sales AS s
LEFT JOIN Plans AS p ON s.Monthid = p.Monthid AND s.Rtn = p.Rtn
WHERE s.Monthid >= 202101 and s.Monthid <= 202112
GROUP BY s.Monthid ;