sql数据库中如何获取“一个月前”和“最近一个月”数据

sql数据库中如何获取“一个月前”和“最近一个月”数据,第1张

oracle

获取一个月前的日期

trunc(add_months(sysdate,-1))

一个月前

select * from t where t.date <trunc(add_months(sysdate,-1))

最近一个月

select * from t where t.date >= trunc(add_months(sysdate,-1))

create or replace function test(rq in date) return is

Result

begin

Result:=Add_Months(rq,-1)

return(Result)

end test

你的数据库是Oracle吗?

另外前一天为1是什么意思,哪列的值吗?

1、创建测试表,

create table test_date(id varchar2(20), v_date date)

2、插入测试数据

insert into test_date values(1, sysdate-30)

insert into test_date values(2, sysdate-40)

insert into test_date values(3, sysdate-60)

insert into test_date values(4, sysdate-80)

insert into test_date values(5, sysdate-90)

commit

3、查询表中全量数据,select t.*, rowid from test_date t

4、编写sql,查询指定月份之前的几个月;例如,查询当前时间前两个月的数据;

 select t.* from test_date t where to_char(v_date,'yyyymm') = to_char(add_months(sysdate,-2), 'yyyymm')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10048006.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存