完成我的家庭作业并且非常困难时间试图找出只有艺术家姓名的人才会出现最多的曲目。
当我正确得到答案时,它会继续显示艺术家姓名和曲目数量。只需要艺术家的名字。试图使用WHERE,HAVING。似乎没什么用。有什么想法吗?
SELECT TOP 1
Artist.Name 'ArtistName',
COUNT(*) TrackName
FROM Artist
JOIN Album ON
Artist.ArtistId = Album.AlbumId
JOIN Track ON
Album.AlbumId = Track.AlbumId
GROUP BY Artist.Name
ORDER BY TrackName DESC
答案 0 :(得分:4)
只需在count(*)
中使用order by
:
SELECT TOP 1 a.Name as ArtistName
FROM Artist a JOIN
Album al
ON a.ArtistId = al.AlbumId join
Track t
ON al.AlbumId = t.AlbumId
GROUP BY a.Name
ORDER BY COUNT(*) DESC;
请注意查询的其他更改:
as
用于列别名。