我知道这是基本的,但我发现它很棘手,并且无法正确地说出问题,以便找到答案。
我想做的是拿这些表 -
Table names
name | nameID |
-----------------
Jhon | 1
Bob | 2
George | 3
Kim | 4
Table mark
nameID | child
--------------
1 | 0
1 | 0
1 | 1
2 | 1
2 | 0
2 | 1
3 | 0
3 | 0
4 | 1
4 | 1
4 | 1
4 | 0
然后计算表名中每个名称出现多少次,表名为child = 1,这样你就得到:
name | count
--------------
Jhon | 1
Bob | 2
Kim | 3
答案 0 :(得分:1)
试试这个。
select n.name, count(*)
from names n, mark m
where n.nameID = m.nameID and m.child = '1'
group by n.name