代码之家  ›  专栏  ›  技术社区  ›  pilcrow

Firebird 2.1时间戳算法和civil间隔

  •  3
  • pilcrow  · 技术社区  · 16 年前

    INTERVAL this reference 我重复的SQLCODE-104错误试图获取 间隔 isql(1) .

    那么,我该如何解释我们在执行任务时,在民事计算时间方面的违规行为——月份并不总是很长,有储蓄时间和跳跃调整的日子也不一样,更不用说混乱的年份了,等等 TIMESTAMP

    我如何轻松地确定“比给定时间早一个月”或“晚一周” ? “一天后”或“两小时前”怎么样?

    5 回复  |  直到 16 年前
        1
  •  5
  •   Douglas Tosi    16 年前

    你可以使用 DateAdd() DateDiff() 内置函数。
    或者,您也可以使用classic date arithmetic .

        2
  •  1
  •   Valentin Rocher    16 年前

    如果Firebird中没有实现这一点,也许您可以通过调用sql server的技术来实现,并获得结果的时间戳?我知道用Java或.Net可以很容易地完成

        3
  •  1
  •   Hugues Van Landeghem    16 年前

    您也可以使用 functions 外部UDF fbudf.dll的

        4
  •  1
  •   Daniel Luyo    15 年前

    有一个很好的外部UDF,名为rFunc: http://rfunc.sourceforge.net/ ,它有很好的日期函数,如DaysBetween和IncDate(d、i1、i2、i3)等

        5
  •  0
  •   avra    15 年前
    1. 从循环中的时间戳日期中减去一天,直到月份发生变化。