try_add 函式

適用於:檢查標示為是 Databricks SQL 檢查標示為是 Databricks Runtime 10.4 LTS 和更新版本

傳回 和 的總 expr1expr2,如果發生錯誤,則傳回 NULL。

語法

try_add ( expr1 , expr2 )

您也可以使用 子句,將此函式叫用OVER視窗函式。

引數

  • expr1:數值、日期、TIMESTAMP 或 INTERVAL 表達式。
  • expr2:如果 expr1 是數值必須是數值 expr2 表達式,則為 INTERVAL,否則為 INTERVAL。

傳回

  • 如果 expr1 為數值,則為自變數的常見最大類型。
  • 如果 expr1 是 DATE,而且 expr2 是一天時間間隔,則結果為 TIMESTAMP。
  • 如果 expr1expr2 是年月間隔,則結果為足夠寬的單位的年月間隔來表示結果。
  • 如果 expr1expr2 是日間時間間隔,則結果為足夠寬的單位日時間間隔,以表示結果。
  • 否則,結果類型會比對 expr1

如果兩個表達式都是間隔,則必須是相同的類別。

如果結果溢位,則結果類型 Databricks SQL 會傳回 NULL。

當您將年月間隔新增至 DATE Databricks SQL 時,可確保產生的日期格式良好。

範例

> SELECT try_add(1, 2);
 3

> SELECT try_add(DATE'2021-03-20', INTERVAL '2' MONTH);
 2021-5-20

> SELECT try_add(TIMESTAMP'2021-03-20 12:15:29', INTERVAL '3' SECOND);
 2021-03-20 12:15:32

> SELECT typeof(try_add(INTERVAL '3' DAY, INTERVAL '2' HOUR));
 interval day to hour

> SELECT try_add(DATE'2021-03-31', INTERVAL '1' MONTH);
 2021-04-30

> SELECT try_add(127Y, 1Y);
 NULL