将您的查询用作子查询,并围绕它包装另一个查询。(从子查询生成查询是
结构化的
在里面
结构化查询语言
).
像这样的东西可能有用。
SELECT Composer, SUM(tracks) duplicate_tracks
FROM (SELECT Name, Composer, Count(*) tracks
FROM Track
GROUP BY Name, Composer
HAVING COUNT(*) > 1
) duptracks
GROUP BY Composer
ORDER BY COUNT(*) DESC;
它将您的查询当作一个表(实际上是一个虚拟表)使用,并在其上运行GROUP BY。要以这种方式使用查询,它需要在
COUNT(*)
我给它起了个名字
tracks
.它还需要在子查询中输入名称。我曾经
duptracks
为此。
外部查询将composer的所有重复曲目与
SUM() ... GROUP BY Composer
然后命令他们首先向作曲家呈现重复最多的曲目。
但请注意,这对您的
Composer
列作为一个整体。它将使用
John, Paul, Ringo, George
就好像他们只是一个作曲家,而不是每个人的重复数。