在单个查询中显示上周和本周的不同用户计数

Show a count of distinct users for last week and current week in single query

提问人:Codemill 提问时间:11/16/2023 最后编辑:Ken WhiteCodemill 更新时间:11/19/2023 访问量:48

问:

我想在一个表中获取上周和本周的用户计数,但我不熟悉如何执行此操作。

到目前为止,我所拥有的只是下面,使用特定日期来提取每周的不同计数。有人可以告诉我如何做到这一点吗?

Select
  COUNT(distinct f.user_key)
FROM
  `Analytics.warehouse.Fact_view` f
WHERE f.date BETWEEN '2023-11-06' AND '2023-11-12'
t-sql google-bigquery date-sub

评论


答:

1赞 Kazi Mohammad Ali Nur Romel 11/16/2023 #1

要计算本周的数据,您可以执行以下操作:

Select COUNT(distinct f.user_key)
from Analytics.warehouse.Fact_view f Where f.date >= DATE_TRUNC(current_date(), WEEK) 

若要获取上周和本周数据的计数,可以使用以下查询:

Select count(distinct case when f.date<DATE_TRUNC(current_date(), WEEK) then f.user_key end) Last_week_count,
count(distinct case when f.date>=DATE_TRUNC(current_date(), WEEK) then f.user_key end) This_week_count

from Analytics.warehouse.Fact_view f
WHERE f.date >= DATE_SUB(DATE_TRUNC(current_date(), WEEK), INTERVAL 1 WEEK)

评论

0赞 Kazi Mohammad Ali Nur Romel 12/5/2023
如果它对您有帮助,请单击绿色按钮将其标记为已回答,接受它作为答案。