+
عامل التشغيل (علامة الجمع)
ينطبق على: التحقق من Databricks SQL Databricks Runtime
إرجاع مجموع expr1
و expr2
.
بناء الجمله
expr1 + expr2
الحجج
expr1
: تعبير رقمي أو تاريخ أو طابع زمني أو فاصل زمني.expr2
: إذا كانexpr1
رقماexpr2
يجب أن يكون تعبيرا رقميا، أو فاصلا زمنيا بخلاف ذلك.
ارجاع
- إذا كان
expr1
رقميا، فإن النوع الأقصى الشائع للوسيطات. - إذا كان
expr1
DATE وهوexpr2
فاصل زمني لليوم، فإن النتيجة هي TIMESTAMP. - إذا كانت
expr1
وexpr2
عبارة عن فواصل زمنية لمدة شهر السنة، فإن النتيجة هي فاصل زمني لمدة شهر من وحدات واسعة بما يكفي لتمثيل النتيجة. - إذا كانت
expr1
وexpr2
عبارة عن فواصل زمنية لليوم، فإن النتيجة هي فاصل زمني لليوم من الوحدات العريضة بما يكفي لتمثيل النتيجة. - وإلا، فإن نوع النتيجة يطابق
expr1
.
إذا كان كلا التعبيرين فاصلا زمنيا، فيجب أن يكونا من نفس الفئة.
عند إضافة فاصل زمني لمدة شهر إلى DATE، يضمن Azure Databricks تكوين التاريخ الناتج بشكل جيد.
إذا تجاوزت النتيجة نوع النتيجة، فإن Azure Databricks يثير خطأ ARITHMETIC_OVERFLOW .
استخدم try_add للعودة NULL
إلى التجاوز.
تحذير
في Databricks Runtime، إذا كان spark.sql.ansi.enabled هو false
، فإن التجاوز لا يسبب خطأ ولكنه "يلتف" النتيجة بدلا من ذلك.
امثله
> SELECT 1 + 2;
3
> SELECT DATE'2021-03-20' + INTERVAL '2' MONTH
2021-5-20
> SELECT TIMESTAMP'2021-03-20 12:15:29' + INTERVAL '3' SECOND
2021-03-20 12:15:32
> SELECT typeof(INTERVAL '3' DAY + INTERVAL '2' HOUR)
interval day to hour
> SELECT DATE'2021-03-31' + INTERVAL '1' MONTH;
2021-04-30
> SELECT 127Y + 1Y;
Error: ARITMETIC_OVERFLOW