Помогите с запросом SQL - PullRequest
       17

Помогите с запросом SQL

0 голосов
/ 27 августа 2009

Мне нужно выполнить запрос SQL, чтобы получить 10 лучших альбомов по количеству просмотров. Количество просмотров - это сумма просмотров каждой песни в указанном альбоме.

Мои таблицы:

albums:
- album_id
- album_name
- album_owner

songs:
- song_id
- song_name
- song_album
- song_owner
- song_views

Можете ли вы, ребята, помочь мне с этим?

Ответы [ 5 ]

4 голосов
/ 27 августа 2009
select sum(song_views) as 'song_sum',album_name 
from albums a 
inner join 
songs s 
on a.album_id = s.song_album 
group by album_name 
order by song_sum DESC 
limit 0,10;

если song_album ссылается на идентификатор альбома ...

3 голосов
/ 27 августа 2009

Попробуйте это:

SELECT  TOP 10 a.album_id, a.album_name, a.album_owner, SUM(s.song_views)
FROM    albums a
        INNER JOIN
                songs s
                ON a.album_id = s.song_album
GROUP BY a.album_id, a.album_name, a.album_owner
ORDER BY SUM(s.song_views) DESC
2 голосов
/ 27 августа 2009

Что-то вроде:

select top 10 song_album
from songs
group by song_album
order by sum(song_views) desc
0 голосов
/ 27 августа 2009

SELECT TOP 10 song_album из песен GROUP BY song_album ЗАКАЗАТЬ sum (song_views) desc

0 голосов
/ 27 августа 2009

Я не мог запустить это, но это должно быть в соответствии с

select album_name, sum(song_views) as views from albums join songs on songs.album_id = songs.song_album group by album_id order by views desc limit 10 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...