gpt4 book ai didi

mysql - 选择每天出现的用户

转载 作者:行者123 更新时间:2023-11-29 01:39:09 24 4
gpt4 key购买 nike

我的问题表面上看起来很简单,但我发现它具有挑战性,因此请求帮助。我有一个包含两列的表格:

table: USERS

USER_ID | LOGGED_IN_DATE
001 | 2015-05-01
002 | 2015-05-01
003 | 2015-05-01
001 | 2015-05-02
...

我需要的是一个查询,该查询将返回给定一周内每天出现的所有 ID,比如 2015-05-01 到 2015-05-07。不仅是一周中的任何时间,而且每天都必须有该用户的记录。我需要尽可能最快和最简洁的查询。有什么想法吗?

我已经尝试过的:

  1. 子查询
  2. 联合查询
  3. 自行加入

没有成功。

谢谢!

最佳答案

聚合可能是最简单的方法:

select u.user_id
from users u
where u.LOGGED_IN_DATE >= '2015-05-01' and u.LOGGED_IN_DATE < '2015-05-08'
group by u.user_id
having count(distinct date(u.LOGGED_IN_DATE)) = 7;

如果该字段确实是没有时间的日期,则您不需要 having 子句中的 date() 函数。

关于mysql - 选择每天出现的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30586476/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com