我有2列,并且我希望在整个BOTH列中查找所有不同值的计数,而不仅仅是两列中的同一行。 IE此处的不同值计数为9,因为1000、5000、7000和8000仅包含一次。
x y
1000 NULL
2000 1000
3000 1000
4000 1000
5000 1000
6000 5000
7000 5000
8000 7000
9000 8000
答案 0 :(得分:0)
您可以取消数据透视和计数:
select count(distinct x)
from ((select x from t) union all
(select y from t)
) t;
也就是说,第一列看起来是唯一的,并且具有您想要的信息,所以也许您只是想要:
select count(*)
from t;
或者:
select count(distinct x)
from t;
答案 1 :(得分:0)
联盟是必经之路
Select count(*) from(Select x from
table tx
union
Select y from table ty) ;