caseالتعبير (SQL Databricks)

إرجاع resN للأول optN الذي يساوي أو إذا لم يتطابق exprdef أي.

إرجاع resN التقييم الأول إلى condN true، أو إذا لم يتم العثور على 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. يتم تقييم الشروط بالترتيب ويتم resNdef تنفيذ أو الذي ينتج النتيجة فقط.

أمثلة

> 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