sql - 每天访问我的商店 4 次或超过 4 次的 user_id 的每日计数
问题描述
我有一张访问过我平台的 user_id 表。我只想计算每个用户和每天访问我的商店 4 次或更多次的用户 ID,持续时间为 10 天。为了实现这一点,我使用了这个查询:
select date(arrival_timestamp), count(user_id)
from mytable
where date(arrival_timestamp) >= current_date-10
and date(arrival_timestamp) < current_date
group by 1
having count(user_id)>=4
order by 2 desc
limit 10;
但是这个查询实际上是在获取计数值大于 4 的所有用户,而不是每天都覆盖几乎所有用户,因此我无法仅隔离在特定日期多次访问我的商店的用户。感谢您在这方面的任何帮助。
谢谢
解决方案
你可以试试这个
with list as (
select user_id, count(*) as user_count, array_agg(arrival_timestamp) as arrival_timestamp
from mytable
where date(arrival_timestamp) >= current_date-10
and date(arrival_timestamp) < current_date
group by user_id)
select user_id, unnest(arrival_timestamp)
from list
where user_count >= 4
推荐阅读
- python - Newbie question regarding @app.route("/index")
- spring - Jhipster Oauth2 + Keycloak User identity duplicated
- javascript - 触发方法的rxjs倒计时
- python - ZeroDivisionError: integer division or modulo by zero i cant see any error
- html - 为什么 google.script.run 在 HTML 中不起作用?
- c - C中的未定义函数
- twitter-bootstrap - 如何在引导程序 5 中将卡片居中
- swift5 - 线程 1:“-[UITableViewController loadView] 加载了“Bf3-ih-lsC-view-YnG-aC-da7” nib,但没有得到 UITableView。”
- python - Python包没有setup.py,
- android - 运行 pub get in flutter 时出现此错误