變更開始

新增秒數

ADD_SECONDS 函數會傳回代表第一個引數加上指定秒數及小數秒數的時間戳記。

讀取語法圖跳過視覺化語法圖ADD_SECONDS(表示式 ,數值表示式)
表示式
指定開始時間戳記的表示式。 表示式必須傳回下列其中一個內建資料類型的值: 時間戳記、字串或圖形字串。

如果 表示式 是字元或圖形字串,則其值必須是時間戳記的有效字串表示法。 如需時間戳記字串表示法的有效格式,請參閱 日期時間值的字串表示法

數值表示式
指定要新增至 expression的秒數及小數秒數的表示式。 numeric-expression 必須傳回內建數值資料類型的值。 如果表示式不是 DECIMAL (27,12) ,則在評估函數之前會將它強制轉型為 DECIMAL (27,12)。 負數值可以用來扣除秒和小數秒。

如果 expression 是時間戳記,則函數的結果是與表示式具有相同精準度的時間戳記。 否則,函數的結果為 TIMESTAMP (12)。 如果任一引數可以是空值,則結果可以是空值; 如果任一引數是空值,則結果是空值。

範例

  • 假設現行時間戳記是 2007 年 1 月 31 日, 01:02:03.123456。 以現行時間戳記加 1 秒來設定主變數 ADD_SECOND。
    SET :ADD_SECOND = ADD_SECONDS(CURRENT TIMESTAMP, 1) 

    主變數 ADD_SECOND 設定有代表 2007-01-31 01:02:04.123456的值。

  • 假設 TIMESTAMP 是主變數,值為 1965 年 7 月 27 日 23:59:59.123456。 以該時間戳記加上 3.123 秒的值來設定主變數 ADD_SECOND。
    SET :ADD_SECOND = ADD_SECONDS(:TIMESTAMP,3.123)

    以代表時間戳記加上 3.123 秒 (1965-07-28 00:00:02.246456) 的值來設定主變數 ADD_SECOND。

  • ADD_SECONDS 函數和日期時間算術可以用來達到相同的結果。 下列範例示範此情況。
    SET :TIMESTAMPHV = TIMESTAMP '2008-02-28 23:58:59.123456' + 61.654321 SECONDS  
    SET :TIMESTAMPHV = ADD_SECONDS(
          TIMESTAMP '2008-02-28 23:58:59.123456', 61.654321)

    在這兩種情況下,都會將主變數 TIMESTAMPHV 設定為值 '2008-02-29 00:00:00.777777'。

    現在請考量相同的範例,但以時間戳記 '2008-02-29 23:59:59.123456' 作為引數。

    SET :TIMESTAMPHV = TIMESTAMP '2008-02-29 23:59:59.123456' + 61.654321 SECONDS
    SET :TIMESTAMPHV = ADD_SECONDS(
          TIMESTAMP '2008-02-29 23:59:59.123456', 61.654321)

    在這兩種情況下,都會以值 '2008-03-01 00:01:00.777777' 來設定主變數 TIMESTAMPHV。

  • 假設 TIMESTAMP 是主變數,值為 1965 年 7 月 27 日 23:59:59.123456。 使用該時間戳記的值減去 3.123 秒,來設定主變數 ADD_SECOND。
    SET :ADD_SECOND = ADD_SECONDS(:TIMESTAMP,-3.123)

    主變數 ADD_SECOND 設為 1965-07-27 23:59:56.000456; 值代表 1965 年 7 月 27 日 23:59:59.123456 減去 3.123 秒。

變更結束