sql-从24小时前存在的表中查找用户
发布时间:2021-01-25 05:50:57 所属栏目:编程 来源:网络整理
导读:我必要编写查询来查找新用户和通例用户. 新用户是指uuid在已往的24小时内(以后刻开始,减去触发查询的时刻)呈此刻table2中,而且早年没有呈现过的用户. 通例用户是指uuid在表2的最后一天呈现,而且在最近3天内至少呈现一次的用户. 除此之外,只有ID为> 10和ip
我必要编写查询来查找新用户和通例用户. 新用户是指uuid在已往的24小时内(以后刻开始,减去触发查询的时刻)呈此刻table2中,而且早年没有呈现过的用户. 通例用户是指uuid在表2的最后一天呈现,而且在最近3天内至少呈现一次的用户. 除此之外,只有ID为> 10和ip!= 2将被思量. table1是一个包括日期的姑且表.我无法弄清晰如安在毗连的辅佐下实现这一方针.请帮我. 表2 +----+---------------------+------+------+ | id | ts | uuid | ip | +----+---------------------+------+------+ | 1 | 2010-01-10 00:00:00 | uid1 | 5 | | 2 | 2010-01-10 00:00:00 | uid2 | 14 | | 3 | 2010-01-10 00:00:00 | uid3 | 11 | | 4 | 2010-01-11 00:00:00 | uid4 | 16 | | 5 | 2010-01-11 00:00:00 | uid5 | 4 | | 6 | 2010-01-13 00:00:00 | uid6 | 2 | | 7 | 2010-01-10 00:00:00 | uid1 | 1 | | 8 | 2010-01-11 00:00:00 | uid2 | 10 | | 9 | 2010-01-12 00:00:00 | uid1 | 1 | | 10 | 2010-01-13 00:00:00 | uid4 | 1 | | 11 | 2010-01-09 21:00:00 | uid1 | 1 | | 12 | 2010-01-09 21:30:00 | uid1 | 2 | | 13 | 2010-01-10 05:00:00 | uid2 | 3 | | 14 | 2010-01-10 12:00:00 | uid1 | 1 | | 15 | 2010-01-10 12:00:00 | uid3 | 1 | | 16 | 2010-01-10 21:00:01 | uid1 | 7 | | 17 | 2010-01-11 01:00:00 | uid2 | 14 | | 18 | 2010-01-11 05:00:00 | uid2 | 11 | | 19 | 2010-01-11 17:59:00 | uid4 | 13 | | 20 | 2010-01-11 06:00:00 | uid5 | 12 | | 21 | 2010-01-11 18:01:00 | uid1 | 14 | | 22 | 2010-01-12 23:05:00 | uid4 | 17 | | 23 | 2010-01-13 12:01:23 | uid6 | 13 | +----+---------------------+------+------+ 23 rows in set (0.00 sec) 表格1 +------------+ | ts | +------------+ | 2010-01-10 | | 2010-01-11 | | 2010-01-12 | | 2010-01-13 | +------------+ 4 rows in set (0.00 sec) 新用户在18:00接管时的输出
MySQL表转储
最佳谜底
您可以将表自己毗连起来,以搜刮统一用户高出一天的条目.假如没有一日匹配项,则左侧联接表中的字段将为NULL.
譬喻:
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |