如何对多个 DISTINCT 列进行 GROUP BY? (Google 大查询)

How to GROUP BY on multiple DISTINCT columns? ( Google Big Query )

  1. 以下代码按日期分组,并计算不同的“a”值。
    SELECT Date,
           COUNT(DISTINCT(a)),
    FROM process
    GROUP BY date
  1. 以下代码显示“a”和“b”列中 DISTINCT 值的数量:

    SELECT COUNT(*)
    FROM (SELECT DISTINCT a, b
          FROM process)

尝试过: 如果我这样写:

SELECT Date,
       COUNT(DISTINCT(a, b)),
FROM process
GROUP BY date

我明白了

ERROR: Aggregate functions with DISTINCT cannot be used with arguments of type STRUCT

问题:我需要计算“a”和“b”列中的不同值。 如何组合 1 和 2 代码?

列和值解释: 日期:时间戳(提取日期) a = 整数 b = 字符串

期望的结果table: 日期(分组):13.09.2002 不同(计数):232

如果您需要获得不同的 a、b 组合,那么这个可能会有所帮助:

SELECT
       Date,
       COUNT(DISTINCT(CONCAT(a,'_',b))) distinct_a_b
  FROM process
 GROUP BY date