sql计算出时间差后如何再和其他字段比较呢?
我是这样写的:
select * from table where RetentionPeriod <(select datediff(month,eDate,GETDATE()) from table )
这样写报子循环的值不止一个,该如何修改呢?
[解决办法]
select * from table where exists (select 1 from ( (select datediff(month,eDate,GETDATE()) diffTime from table )b where table.RetentionPeriod <b.diffTime )
[解决办法]
select * from table where RetentionPeriod <datediff(month,eDate,GETDATE())
[解决办法]
select * from table where RetentionPeriod < datediff(month,eDate,GETDATE())
[解决办法]
不用这么复杂,直接这样就可以:
你的意思是不是,要查询小于当前日期和eDate之间相差的月是吧
select * from table where RetentionPeriod < datediff(month,eDate,GETDATE())