oracle数据库中:
首先要区分,时间字段是日期格式,还是字符串
日期格式:trunc(sysdate - 1);
字符串格式:to_char(sysdate - 30,' yyyy-mm-dd ')
选前1天数据:
select * from 表
where 日期>=to_date(to_char(sysdate-1,'yyyy/mm/dd'),'yyyy/mm/dd');
或:
select * from 表
where 日期>=trunc(sysdate - 1);选前7天数据:
select * from 表
where 日期=to_date(to_char(sysdate-7,'yyyy/mm/dd'),'yyyy/mm/dd');或:select * from 表
where 日期>=trunc(sysdate - 7);选前30天数据:
select * from 表
where 日期=to_date(to_char(sysdate-30,'yyyy/mm/dd'),'yyyy/mm/dd');或:select * from 表
where 日期>=trunc(sysdate - 30);选前一年数据:
select * from 表
where 日期=to_date(to_char(add_months(sysdate,-12),'yyyy/mm/dd'),'yyyy/mm/dd');
OLE DB源 取30天数据(SqlServer数据库):
select *
from t_jcxx
where f_sdrq >= CONVERT(varchar(100), dateadd(day,-30,GETDATE()), 23)
取前2月数据:
select * from t_jcxxwhere f_sdrq >= CONVERT(varchar(100), dateadd(MONTH,-2,GETDATE()), 23)
取前1年数据:
select * from t_jcxxwhere f_sdrq >= CONVERT(varchar(100), dateadd(year,-1,GETDATE()), 23)