我在解决如何做到这一点时遇到了问题。这不是真正的问题,但非常相似。
我有桌子A
ID Name
10 Bob
11 Tom
12 Suzie
13 Billy
14 Rob
15 Ben
然后是表B,其中B_ID引用表A中的ID
B_ID Value
11 1500
13 2600
然后是表C,其中C_ID引用表A中的ID
C_ID MatchedWith
10 11
12 13
14 11
15 11
此查询的目的是列出表B中人员的姓名,以及从C中与他们匹配的人数
...所以生成的查询会给出类似的结果:
Name Count
Tom 3
Bily 1
我完全不知道如何做到这一点,所以任何帮助都会超级!谢谢!
答案 0 :(得分:1)
SELECT
A.Name,
COUNT(*) as 'Count'
FROM
C
JOIN B
ON C.MatchedWith = B.B_ID
JOIN A
ON A.ID = B.B_ID
GROUP BY A.Name
ORDER BY Count DESC;