sql 日期处理

Posted on 2021-05-26 09:18  飞行的蟒蛇  阅读(79)  评论(0编辑  收藏  举报

sql sever 

1.取昨日:CONVERT(varchar(10),GETDATE()-1,120)

2.日期加减:DATEADD(MONTH,12,CONVERT(datetime,'202005'+'01',101))

ORACLE 

1.取昨日:to_char(sysdate-1,'yyy-MM-dd') 

2.日期加减:ADD_MONTHS(SYSDATE,-1)

-- 当月第一天
select dateadd(month, datediff(month, 0, getdate()), 0)

-- 当月最后一天(思路:下月的第一天减去一天)
select dateadd(month, datediff(month, 0, dateadd(month, 1, getdate())), -1)

--上月第一天

convert(VARCHAR(10),dateadd(month, datediff(month, 0, getdate())-1, 0),20)

--上月最后一天

convert(VARCHAR(10),DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), -1),20)

-- 当年第一天
select dateadd(year, datediff(year, 0, getdate()), 0)

-- 当年最后一天(思路:下年的第一天减去一天)
select dateadd(year, datediff(year, 0, dateadd(year, 1, getdate())), -1)

帆软:

1.本月1号:DATEINMONTH(MONTHDELTA(today(),-1),1)