View difference between Paste ID: MuB8yqMz and bain1xJq
SHOW: | | - or go back to the newest paste.
1-
/*Нужно объединить данные двух таблиц: track и invoice_line. Таблица track хранит информацию о музыкальных треках в магазине, названия треков указаны в поле name. Таблица invoice_line содержит данные о купленных треках, их стоимость указана в поле unit_price. В обеих таблицах есть поле track_id — в нём содержатся идентификаторы музыкальных треков.
1+
/*Нужно дополнить запрос: добавьте поле с идентификатором плейлиста playlist_id. Такое поле можно получить из таблицы playlist_track. В этой таблице собраны идентификаторы плейлистов и треков (поле track_id). Условие остаётся прежним: если идентификаторы треков не совпадают во всех трёх таблицах, такие треки не должны войти в итоговую таблицу. Выведите первые 20 записей.
2-
Выгрузите таблицу с названием трека и числом, которое соответствует тому, сколько раз трек покупали. Учитывайте, что в одном заказе один и тот же трек может встречаться несколько раз. Если какой-либо из треков не покупали или о купленном треке нет информации — такие записи не должны войти в таблицу. Оставьте в итоговой таблице первые 20 записей.
2+
3
4
SELECT t.name,
5
       SUM(i.quantity),
6-
       COUNT(i.quantity) AS total_quantity
6+
       playlist_id
7
FROM track AS t
8
INNER JOIN invoice_line AS i ON t.track_id = i.track_id
9-
GROUP BY t.name
9+
INNER JOIN playlist_track AS p ON t.track_id = p.track_id
10
GROUP BY t.name,
11
         playlist_id
12
LIMIT 20;