mysql - 需要互相查询7天内的所有记录
问题描述
我想获得基于日期的servicetag
, 。ActivityID
created_on
这里的标准是我需要检索在 7 天内创建的所有记录。我需要为超过 100 条记录过滤相同的内容。
我能够在两个日期之间进行过滤。但是,当我意识到我可能必须比较每条记录的创建时间并检索彼此在 7 天内的数据时,我遇到了难题。
create table TicketInfo(Created_on datetime,
ActivityType varchar(255),
ServiceTag varchar(255),
ActivityID varchar(255));
ServiceTag ActivityType ActivityID Created_on
FFF3FF call-inbound A-45879 2018-08-15 09:15:00
FFF3FF email-inbound A-45879 2018-08-13 09:15:00
FFF3FF email-inbound A-1234 2018-08-05 09:15:00
Z345FG call-inbound A-2345T 2018-08-03 09:10:00
提前致谢!
解决方案
如果您的数据库是 mysql,则以下过滤器有效
select * from TicketInfo where Created_on>= DATE_SUB(Created_on, INTERVAL 7 DAY) and
Created_on<=Created_on
如果是 Sql Server 那么它应该是
select * from TicketInfo where Created_on>= dateadd(day,-7,Created_on) and
Created_on<=Created_on
但是如果是postgrey sql那么它应该是
select * from TicketInfo
where Created_on>= Created_on- interval '7 days'
and Created_on<=Created_on
推荐阅读
- javascript - Firestore 分别按日期和时间查询
- mongodb - 从 mongodb 4.0 中删除重复记录
- node.js - 如何将 ssl private-key.txt 转换为 private.key 扩展名
- c# - Xamarin 在页面之间传递参数
- c# - C# xls & xlsx 查询从工作表中选择,而不考虑工作表名称
- c# - Cortana 是否支持 webhook/调用外部 API?
- php - 内核中的身份验证声明和 laravel 中的路由无法正常工作
- emacs - 如何在 magit 中暂存/提交当前缓冲区?
- java - 从 JDBC 连接到 MSSQL 服务器时出现 Windows 身份验证问题
- java - FLAG_DIM_BEHIND 导致 android oreo 滞后