我在数据库表中有一列名为“ ChangePolicy”的列,该列始终包含一个数字,它表示月份数。我在同一张表中还有一列称为“ LastChanged”,它表示该项目的最后更改日期。我正在为返回根据LastChanged日期和ChangePolicy而将要更改的所有项目所需的查询而苦苦挣扎。含义:如果ChangePolicy为3个月,我需要返回自LastChanged日期以来3个月或更长时间的所有项目。
我有以下内容,但未提供期望的结果。
SELECT * FROM table
WHERE lastchanged <= dateadd(month, +3, getdate())
答案 0 :(得分:3)
如果我理解正确,这里是一个选择:
select *
from yourtable
where lastchanged <= dateadd(month, -1 * changepolicy, getdate())