我需要创建一个SQL查询,将da​​te_listed设置为-245天

时间:2016-02-16 16:24:58

标签: sql sql-server

我知道我可以将date_listed更新为我需要的特定日期

UPDATE properties
SET date_listed = '2015-06-15 10:28:39.250'
WHERE Users_id = 838598
and status = 'inactive'

但我希望它能自动更新到-245天,而不必每次都计算日期

1 个答案:

答案 0 :(得分:2)

我认为这是您正在寻找的内容(如果您正在使用 SQL Server ):

UPDATE properties
SET date_listed = DATEADD(DAY, -245, GETDATE())
WHERE Users_id = 838598
AND status = 'inactive'

您似乎在当前日期之前的245天更新了它。

否则,如果您想在date_listed之前将值更新为245天,请使用以下命令:

UPDATE properties
SET date_listed = DATEADD(DAY, -245, date_listed)
WHERE Users_id = 838598
AND status = 'inactive'

对于Oracle ,请更新至当前日期之前的245天:

UPDATE properties
SET date_listed = systimestamp - 245
WHERE Users_id = 838598
AND status = 'inactive'

或更新至date_listed中日期前245天:

UPDATE properties
SET date_listed = date_listed - 245
WHERE Users_id = 838598
AND status = 'inactive'