数据库取前N天数据

来源:互联网 发布:淘宝网2017冬季女装 编辑:程序博客网 时间:2024/04/30 00:16

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_jcxx

where f_sdrq >= CONVERT(varchar(100), dateadd(MONTH,-2,GETDATE()), 23)

取前1年数据:
select * from t_jcxx

where f_sdrq >= CONVERT(varchar(100), dateadd(year,-1,GETDATE()), 23)




原创粉丝点击