表1- tblCompanion
companionid | companionname | who played
---------------------------------------------------
1 | River Song | Alex Kingston
2 | Rory Williams | Arthur Darvill
3 | Wilfred Mott | Bernard Cribbins
4 | Rose Tyler | Billie Piper
5 | Adam Mitchell | Bruno Langley
6 | Donna Noble | Catherine Tate
7 | Jackson Lake | David Morrissey
8 | Sarah Jane Smith | Elisabeth Sladen
. | . | .
. | . | .
. | . | .表2- tblEpisodeCompanion
Episodecompanionid | EpisodeId | companionid
---------------------------------------------
1 | 1 | 4
2 | 2 | 4
3 | 3 | 4
4 | 4 | 4
5 | 5 | 4
6 | 6 | 4
7 | 7 | 4
8 | 8 | 6
9 | 9 | 6
10 | 10 | 6
11 | 11 | 1
12 | 12 | 1
13 | 13 | 2
. | . | .
. | . | .
. | . | .从这两个表中,我希望得到以下结果:
No | companianName | Episodes
-----------------------------
1 | Amy Pond | 33
2 | Rose Tyler | 32
3 | Rory Williams | 25我已经尝试了几个小时了,但是无法得到上面这样的结果集,请解释一下如何解决这个问题。
发布于 2016-11-07 22:41:45
这个查询应该会为您做到这一点:
SELECT TOP 3
tblCompanion.companionname,
Count(*) AS Episodes
FROM tblEpisodeCompanion
INNER JOIN tblCompanion
ON tblEpisodeCompanion.companionid = tblCompanion.companionid
GROUP BY tblCompanion.companionname
ORDER BY Count(*) DESChttps://stackoverflow.com/questions/40467717
复制相似问题