我想根据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
谢谢!
答案 0 :(得分:0)
如果您的数据库是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