sql语句要实现判断时间小于1个月怎么判断?
如:insertintotable1select*fromtable2wherelatestOprTime<'2015-12-1';latestOprTime字段中已经存...
如: insert into table1
select * from table2
where latestOprTime<'2015-12-1';
latestOprTime字段中已经存有"yyyy-MM-ss hh:mm;ss"格式的时间,需要判断时间小于1个月,判断的时间不能写死,要是动态时间。怎么写? 展开
select * from table2
where latestOprTime<'2015-12-1';
latestOprTime字段中已经存有"yyyy-MM-ss hh:mm;ss"格式的时间,需要判断时间小于1个月,判断的时间不能写死,要是动态时间。怎么写? 展开
1个回答
展开全部
DECLARE @oldDate DATETIME
SET @oldDate='2015-10-25 10:25:00' --给初始赋值
SET @oldDate=DATEADD(M,1,@oldDate) --初始值加上一个月
SELECT DATEDIFF(SS,@oldDate,GETDATE()) ---将当前时间与加上一个月时间的初始值比较,值大于0则表明时间间隔大于一个月,此句中的DATEDIFF()中的SS是比较秒的,是将比较精度到秒,可以使用MM/HH/DAY等
判断时间过了一个月思路是
1、由时间开始(@oldDate),赋初始值
2、时间开始再加上一个月的时间,由于月份不同天数不同,所以,使用DATEADD函数比较好的效果
3、此时,@oldDate是已过一个月时间后的时间,再与当前时间比较,大于0则超过当前时间,即是时间过了一个月,否则,时间不足一个月
SET @oldDate='2015-10-25 10:25:00' --给初始赋值
SET @oldDate=DATEADD(M,1,@oldDate) --初始值加上一个月
SELECT DATEDIFF(SS,@oldDate,GETDATE()) ---将当前时间与加上一个月时间的初始值比较,值大于0则表明时间间隔大于一个月,此句中的DATEDIFF()中的SS是比较秒的,是将比较精度到秒,可以使用MM/HH/DAY等
判断时间过了一个月思路是
1、由时间开始(@oldDate),赋初始值
2、时间开始再加上一个月的时间,由于月份不同天数不同,所以,使用DATEADD函数比较好的效果
3、此时,@oldDate是已过一个月时间后的时间,再与当前时间比较,大于0则超过当前时间,即是时间过了一个月,否则,时间不足一个月
追问
我现在的需求就是已经有一个latestOprTime字段了,里面已经有时间值了,需要判断这个字段值是否小于一个月,判断条件应该怎么写?
追答
我这就是这个意思啊...在初始值加上一个月就是判断你的是否在一个月之内啊,.....
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询