case التعبير

ينطبق على:check marked yes Databricks SQL check marked yes 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