现表t1有两个日期字段RGMON和Z1MON,类型都为yyyyMM类型。
我想在select t1表的where条件下加上 RGMON<= Z1MON + 入参数字a(表示月)
即RGMON日期小于等于Z1MON+数字月,请问怎么sql语句拼写
补充:
补充2:
楼下正确答案:${a}要加的数 Z1MON字段月份
where RGMON<= REPLACE(CONVERT(varchar(7), dateadd(month,${a},Z1MON+'01'), 120),'-','')
~
select a.* from t1 a
join t1 b on a.id=b.id and a.rgmon<=z1mon
where 1=1
and a.字段名称='${入参数字a}'
这样?
select * from 表 where RGMON<=format(CAST(DATEADD(M,$a,CONCAT('Z1MON','01')) AS DATE),'yyyyMM')
那你直接把Z1MON截断 再拼接上参数月份不就行了吗,substring(Z1MON,1,4)+'${a}'