【问题标题】:Frequency distinct values grouped by date按日期分组的频率不同值
【发布时间】:2021-08-06 21:15:36
【问题描述】:

我正在尝试获取去年每个月的唯一 ID 值的频率。但是,我没有得到结果.. 包括错误消息“SELECT list expression references column user_id which is not grouped or aggregated”。

如何获取每个月的唯一 ID 数量并按月对它们进行分组?

我尝试了什么:

SELECT
  user_id,
  EXTRACT(MONTH FROM date) as month
FROM
  TABLE
WHERE
  date >= '2020-09-01'
GROUP BY
  month

我想要这样的东西:

month count of unique user_id
1 300
2 200
... ...
12 250

【问题讨论】:

    标签: sql google-bigquery distinct frequency


    【解决方案1】:

    您将使用GROUP BYCOUNT(DISTINCT)

    SELECT EXTRACT(MONTH FROM date) as month, COUNT(DISTINCT user_id)
    FROM TABLE
    WHERE date >= '2020-09-01'
    GROUP BY 1;
    

    我建议您在查询中包含年份。在 BigQuery 中,这是最简单的使用 DATE_TRUNC()

    SELECT DATE_TRUNC(date, MONTH) as month, COUNT(DISTINCT user_id)
    FROM TABLE
    WHERE date >= '2020-09-01'
    GROUP BY 1;
    

    【讨论】:

      猜你喜欢
      • 2012-01-28
      • 1970-01-01
      • 2021-11-04
      • 1970-01-01
      • 2015-03-05
      • 1970-01-01
      • 2018-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多