比如 时间格式为2012-12-25,判断当日>25变成2013-01,当日期<=25,变成2012-12,怎么用sql语句实现呢,求各位帮忙下,
------解决方案--------------------
declare @dt datetime = '2013-02-26'
select convert(char(7),dateadd(month,1,@dt-25),120) --2013-03
set @dt = '2013-02-25'
select convert(char(7),dateadd(month,1,@dt-25),120) --2013-02
------解决方案--------------------
declare @dt datetime = '2013-02-26'
select convert(char(7), (case when day(@dt)>25 then dateadd(month,1,@dt) else @dt end), 120) --2013-03
set @dt = '2013-02-25'
select convert(char(7), (case when day(@dt)>25 then dateadd(month,1,@dt) else @dt end), 120) --2013-02
------解决方案--------------------
使用convert将日期转换称字符,然后使用substring函数截取进行比较,根据比较结果变量赋值。