2个不同列的计数

问题描述

| 如何获得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