我有以下两个表(PostgreSQL)
tableA
a b
----------
1 A
2 B
表B
c b
----------
1 A
3 B
我想找出相同数量的列b
,但是如果列a
和列c
相同,则算一。
所以最终结果应该是
b count
----------
A 1
B 2
我应该怎么写sql?
答案 0 :(得分:1)
两个表需要 tr,td {
overflow: auto;
}
,然后需要union all
来计数group by b
的不同值:
a
答案 1 :(得分:0)
按列b
进行汇总,并计算列a
的不同计数:
SELECT b, COUNT(DISTINCT a) AS count
FROM yourTable
GROUP BY b
ORDER BY b;