sql语句为:update 表 set 日期字段=dateadd(m,1,日期字段)
定义和用法
DATEADD() 函数在日期中添加或减去指定的时间间隔。
语法
DATEADD(datepart,number,date)
date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
用months_between()
函数求出两个日期相差的月数,这个求出来比较准确,可以满足精确计算工龄也比较符合业务需求,再除以12
select
months_between(sysdate,date'2012-01-01')
from
dual;
也用不着存储过程啊,直接运行下边
with t as(select number rn from masterspt_values where type='p')
select
convert(varchar(7),dateadd(month,rn,CAST('2015-01-01' as datetime)),120) from t where
dateadd(month,rn,CAST('2015-01-01' as datetime))<=CAST('2015-12-31' as datetime)
DatePart (I,D,[,FW[,FY]])
传回一个日期的之部份。
>I :设定传回那一部份。譬如 >I="d" 表示传回 部份为日。 >I 的设定值如下:
yyyy Year 年
q Quarter 季
m Month 月
d Day 日
w Weekday 星期
h Hour 时
m Minute 分
s Second 秒
D :待计算的日期。
>FW :设定每周第一天为星期几, 若未设定则表示为星期天。 >FW 的设定值如下:
0 使用 >API 的设定值。
1 星期天
2 星期一>3 星期二
4 星期三
5 星期四
6 星期五
7 星期六
FY :设定一年的第一周, 若未设定则表示一月一日那一周为一年的第一周。 >FY 的设定值如下:
0 使用 >API 的设定值。
1 一月一日那一周为一年的第一周
2 至少包括四天的第一周为一年的第一周
3 包括七天的第一周为一年的第一周
例子: DatePart ("m","25-Mar-99 ")
结果: 3
说明:显示传回一个日期 的月部份。
Year(@time),Month(@time)2个函数即可。
然后用它们来组装字符串也就简单了。
CONVERT(VarChar(7),@time,120)会得到YYYY-MM。调用。
用转成字符串,但此时他已经不是时间类型。
CONVERT(char(7),"你的时间例",120)
以上就是关于SQL数据库中,如何把日期型字段的值加上1个月全部的内容,包括:SQL数据库中,如何把日期型字段的值加上1个月、PL/SQL中如何求两个日期之间相差的年月日(就是要得到这样的数据:YYYYMMDD),要精确值、sqlserver数据库 如何循环日期获取年和月等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)