SQL请教大家一个日期的加减法

比如一个字段A,datetime,2009-11-20 12:23:12

现在我想做两件事情

月份减1,得出2009-10-20 12:23:12
日期减1,得出2009-11-19 12:23:12

请问在不改变字段类型的前提下如何实现,谢谢大家

ql语句处理时间——日期加减天数如下:

select date_add(now(), interval 1 day); -- 加1天

select date_add(now(), interval 1 hour); -- 加1小时

select date_add(now(), interval 1 minute); -- 加1分钟

select date_add(now(), interval 1 second); -- 加1秒

select date_add(now(), interval 1 microsecond);-- 加1毫秒

select date_add(now(), interval 1 week);-- 加1周

select date_add(now(), interval 1 month);-- 加1月

select date_add(now(), interval 1 quarter);-- 加1季

select date_add(now(), interval 1 year);-- 加1年

扩展资料

SQL中常用日期函数

1、GETDATE() 返回当前系统日期;

SELECT GETDATE()

2、DATEADD(日期部分,常数,日期) 返回将日期的指定日期部分加常数后的结果返回;

--常数为正

SELECT DATEADD(YY,1,GETDATE())

--等同于

SELECT DATEADD(YEAR,1,GETDATE())

--常数为负数

SELECT DATEADD(YY,-2,GETDATE())

--常数为小数(直接舍去小数部分)

SELECT DATEADD(YY,2.4,GETDATE())

SELECT DATEADD(YY,2.5,GETDATE())

SELECT DATEADD(YY,2.6,GETDATE())

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-04-22
http://baike.baidu.com/view/327444.htm?fr=ala0
月份减1 select DateAdd(m,-1, A) from 表
日期减1 select DateAdd(d,-1, A) from 表本回答被提问者采纳
第2个回答  2009-12-10
select dateadd(month,-1,字段A) 月份减一
select dateadd(day,-1,字段A) 日期减一
第3个回答  2009-12-10
select dateadd(month,-1,A) 月份减一,dateadd(day,-1,A) 日期减一 from 表
第4个回答  2009-12-10
select add_months(datetime, -1), datetime-1 from dual