本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
不含限定詞語法的間隔常值範例
注意
下列範例示範使用不含 YEAR TO MONTH
或 DAY TO SECOND
限定詞的間隔常值。如需搭配限定詞使用建議間隔常值的資訊,請參閱 間隔資料類型和常值。
使用間隔常值來表示指定的時間期間,例如 12 hours
或 6 months
。您可以在需要表示日期時間的條件和表達式中,使用這些間隔常值。
間隔常值表示為INTERVAL關鍵字與數值數量和支援日期部分的組合,例如 INTERVAL '7 days'
或 INTERVAL '59 minutes'
。您可以串連幾個數量和單位,來組成更精確的間隔時間,例如:INTERVAL '7 days, 3 hours, 59 minutes'
。也支援每種單位的縮寫和複數,例如 5 s
、5
second
和 5 seconds
是相同的間隔時間。
如果未指定日期部分,則間隔值代表秒。您可以指定小數格式的數量值 (例如:0.5 days
)。
下列範例顯示不同間隔值的一連串計算。
以下內容為指定日期增加 1 秒。
select caldate + interval '1 second' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 00:00:01 (1 row)
以下內容為指定日期增加 1 分鐘。
select caldate + interval '1 minute' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 00:01:00 (1 row)
以下內容為指定日期增加 3 個小時又 35 分鐘。
select caldate + interval '3 hours, 35 minutes' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 03:35:00 (1 row)
以下內容為指定日期增加 52 週。
select caldate + interval '52 weeks' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2009-12-30 00:00:00 (1 row)
以下內容為指定日期增加 1 週 1 小時 1 分鐘又 1 秒。
select caldate + interval '1w, 1h, 1m, 1s' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2009-01-07 01:01:01 (1 row)
以下內容為指定指定日期增加 12 個小時 (半天)。
select caldate + interval '0.5 days' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 12:00:00 (1 row)
以下內容從 2023 年 2 月 15 日減去 4 個月,結果是 2022 年 10 月 15 日。
select date '2023-02-15' - interval '4 months'; ?column? --------------------- 2022-10-15 00:00:00
以下內容從 2023 年 3 月 31 日減去 4 個月,結果是 2022 年 11 月 30 日。計算有將一個月中的天數納入考量。
select date '2023-03-31' - interval '4 months'; ?column? --------------------- 2022-11-30 00:00:00