问题描述
|
如何获得2列的计数,以使两列有不同的组合?
Select count(distinct cola,colb)
解决方法
SELECT COUNT(*)
FROM (
SELECT DISTINCT a,b
FROM mytable
)
,SELECT COUNT(1)
FROM (
SELECT DISTINCT COLA,COLB
FROM YOUR_TABLE
)
,另一种方式
SELECT COUNT(DISTINCT COLA || COLB)
FROM THE_TABLE
http://www.sqlfiddle.com/#!4/c287e/2
,SELECT(从...选择count(cola)),(从...选择count(colb))
您可能要看一下:
http://www.java2s.com/Code/Oracle/Aggregate-Functions/COUNTcolumnandCOUNTcount传递给该函数的行数.htm
如果需要,可以在子查询中放入Distinct
。
,在Oracle DB中,您可以连接列,然后依靠该连接的字符串,如下所示:
SELECT count(DISTINCT concat(ColumnA,ColumnB)) FROM TableX;
在MySql中,您可以将列作为参数添加到count方法中。
SELECT count(DISTINCT ColumnA,ColumnB) FROM TableX;
,SELECT COUNT(*)
FROM (
SELECT DISTINCT a,b
FROM mytable
) As Temp