一尘不染

我可以在Where子句中使用Firebird DateAdd函数吗?

sql

在firebird中,我可以DateAdd在where子句中使用该函数吗?我有以下sql;

select
  s.number,
  s.warranty_start
from
  serial_number s
where
  s.warranty_start > dateadd(year, -3, 'now')

我得到错误;

expression evaluation not supported

阅读 174

收藏
2021-03-08

共1个答案

一尘不染

您的第三个参数无效。

select
  s.number,
  s.warranty_start
from
  serial_number s
where
  s.warranty_start > dateadd(year, -3, current_timestamp)

'now'是只能与date关键字(例如)一起使用的字符串文字date 'now'。因此,而不是current_timestamp您需要编写date“ now”。

current_timestamp如果两者均等效,我更喜欢使用标准SQL函数,而不是使用DBMS特定函数。

2021-03-08