Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunun için geçerlidir:
Databricks Runtime 16.3 ve üstü
İlk olarak thenStmtN veya optN'e eşit olan expr için elseStmt'ı yürütür; eğer optNile eşleşen bir expr yoksa.
Bu, basit durum deyimi olarak adlandırılır.
İlk thenStmtN, condNolarak değerlendirildiğinde true'ı yürütür, veya herhangi bir elseStmt, condNolarak değerlendirilmiyorsa true'ü yürütür.
Bu, aranan durum ifadesi olarak adlandırılır.
Durum ifadeleri sonuç değerleri veriyorsa bkz CASE ifadesi
Bu deyim yalnızca bileşik deyimi içinde kullanılabilir.
Sözdizimi
CASE expr
{ WHEN opt THEN { thenStmt ; } [...] } [...]
[ ELSE { elseStmt ; } [...] ]
END CASE
CASE
{ WHEN cond THEN { thenStmt ; } [...] } [...]
[ ELSE { elseStmt ; } [...] ]
END CASE
Parametreler
ifade
Karşılaştırmanın tanımlandığı tüm ifadeler.
optexprve diğer tümoptNile en az ortak türe sahip bir ifade.thenStmtÖnceki koşul
trueise çalıştırılacak bir SQL deyimi.elseStmthayır
condise yürütülecek BIR SQL deyimi.truecondya dafalseveyanullhepsidir.condBOOLEANifadesi.
Koşullar sırayla değerlendirilir ve yalnızca opt veya condtrue olarak değerlendirildiğinde, ilk deyim kümesi yürütülür.
Örnekler
-- a simple case statement
> BEGIN
DECLARE choice INT DEFAULT 3;
DECLARE result STRING;
CASE choice
WHEN 1 THEN
VALUES ('one fish');
WHEN 2 THEN
VALUES ('two fish');
WHEN 3 THEN
VALUES ('red fish');
WHEN 4 THEN
VALUES ('blue fish');
ELSE
VALUES ('no fish');
END CASE;
END;
red fish
-- A searched case statement
> BEGIN
DECLARE choice DOUBLE DEFAULT 3.9;
DECLARE result STRING;
CASE
WHEN choice < 2 THEN
VALUES ('one fish');
WHEN choice < 3 THEN
VALUES ('two fish');
WHEN choice < 4 THEN
VALUES ('red fish');
WHEN choice < 5 OR choice IS NULL THEN
VALUES ('blue fish');
ELSE
VALUES ('no fish');
END CASE;
END;
red fish
İlgili makaleler
- SQL Betiği
- Bileşik deyim
- CASE ifadesi
- IF deyimi