Firebird 2.1 TIMESTAMP算术和民间间隔

pil*_*row 3 sql math firebird timestamp firebird2.1

我的理解是,与Interbase v6一致,Firebird 2.5不支持SQL-92 INTERVAL关键字.至少,所以建议这个引用和我重复的SQLCODE -104错误试图INTERVAL在Firebird的isql(1)下运行.

那么,我如何解释我们的民事清算时间的不规则性 - 月份不是一成不变的,也不是节省时间和飞跃调整的日子,更不用说混乱的年份等等 - 执行TIMESTAMP算术时在Firebird 2.1下?

我怎样才能轻易地确定"一个月前"或"一周后"而不是给定TIMESTAMP?"一天后"或"两小时前"怎么样?

Dou*_*osi 5

您可以使用DateAdd()DateDiff()内置函数.
或者,您也可以使用经典日期算术.

  • @pilcrow:您无法识别DST更改,因为这会假定日期/时间是本地的.函数as-似乎与系统时间一起使用,这是一件好事,因为数据库应始终以UTC格式存储时间戳. (2认同)