+(加號)運算符

適用於:勾選“是”磚的SQL勾選“是”磚運行時

返回expr1而且expr2

語法

expr1+expr2

參數

  • expr1:數字、DATE、TIMESTAMP或INTERVAL表達式。

  • expr2:如果expr1是一個數字expr2必須為數值表達式,否則為INTERVAL。

返回

  • 如果expr1是一個數字,參數的公共最大類型。

  • 如果expr1是日期,expr2為日-時間間隔,結果為時間戳。

  • 如果expr1而且expr2是年-月間隔,結果是一個足夠寬的單位的年-月間隔來表示結果。

  • 如果expr1而且expr2是日-時間隔,結果是一個足夠寬的單位的日-時間隔來表示結果。

  • 否則,結果類型匹配expr1

如果兩個表達式都是interval,它們必須屬於同一個類。

當向DATE添加年-月間隔時,Databricks可確保生成的日期格式良好。

如果結果溢出結果類型,Databricks將引發ARITHMETIC_OVERFLOW錯誤。

使用try_add返回在溢出。

警告

在Databricks Runtime中,如果spark.sql.ansi.enabled,溢出不會導致錯誤,而是“包裝”結果。

例子

>選擇1+2;3.>選擇日期“2021-03-20”+時間間隔' 2 '2021-5-20.>選擇時間戳“2021-03-20 12:15:29”+時間間隔“3”第二個2021-03-20.121532>選擇typeof時間間隔“3”一天+時間間隔' 2 '小時時間間隔一天小時>選擇日期“2021-03-31”+時間間隔' 1 ';2021-04-30.>選擇127Y+1Y;錯誤ARITMETIC_OVERFLOW