t1
id | name | include
-------------------
1 | foo | true
2 | bar | true
3 | bum | false
t2
id | some | table_1_id
-------------------------
1 | 42 | 1
2 | 43 | 1
3 | 42 | 2
4 | 44 | 1
5 | 44 | 3
期望的输出:
name | count(some)
------------------
foo | 3
bar | 1
我目前通过查看其他解决方案获得的信息:
SELECT a.name,
COUNT(r.some)
FROM t1 a
JOIN t2 r on a.id=r.table_1_id
WHERE a.include = 'true'
GROUP BY a.id,
r.some;
但这似乎让我
name | count(r.some)
--------------------
foo | 1
foo | 1
bar | 1
foo | 1
我不是 sql 专家(我可以做简单的查询),所以我也在四处搜索,但找到的大多数解决方案都给了我这个结果。我可能错过了一些非常简单的东西。