case
التعبير
ينطبق على: Databricks SQL Databricks Runtime
إرجاع resN
للأول optN
الذي يساوي expr
أو def
إذا لم يتطابق أي منها.
إرجاع resN
التقييم الأول condN
إلى صحيح، أو def
إذا لم يتم العثور على أي منها.
بناء الجملة
CASE expr {WHEN opt1 THEN res1} [...] [ELSE def] END
CASE {WHEN cond1 THEN res1} [...] [ELSE def] END
الوسيطات
expr
: أي تعبير يتم تعريف المقارنة له.optN
: تعبير يحتوي على نوع أقل شيوعا معexpr
وجميع الأنواع الأخرىoptN
.resN
: أي تعبير يحتوي على نوع أقل شيوعا مع كافة وresN
.def
def
: تعبير اختياري له نوع أقل شيوعا مع الكلresN
.condN
: تعبير منطقي.
عمليات الإرجاع
يتطابق نوع النتيجة مع النوع الأقل شيوعا من resN
و def
.
إذا def
تم حذف القيمة الافتراضية هي NULL.
يتم تقييم الشروط بالترتيب ويتم تنفيذ أو def
الذي ينتج عنه النتيجة فقطresN
.
الأمثلة
> SELECT CASE WHEN 1 > 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END;
1.0
> SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END;
2.0
> SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 < 0 THEN 2.0 END;
NULL
> SELECT CASE 3 WHEN 1 THEN 'A' WHEN 2 THEN 'B' WHEN 3 THEN 'C' END;
C