如何对多个 DISTINCT 列进行 GROUP BY? (Google 大查询)
How to GROUP BY on multiple DISTINCT columns? ( Google Big Query )
- 以下代码按日期分组,并计算不同的“a”值。
SELECT Date,
COUNT(DISTINCT(a)),
FROM process
GROUP BY date
- 以下代码显示“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
- 以下代码按日期分组,并计算不同的“a”值。
SELECT Date,
COUNT(DISTINCT(a)),
FROM process
GROUP BY date
- 以下代码显示“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