MySQL VAKA İşlevi
Örnek
Koşulları gözden geçirin ve ilk koşul karşılandığında bir değer döndürün:
SELECT OrderID, Quantity,
CASE
WHEN Quantity > 30
THEN "The quantity is greater than 30"
WHEN Quantity =
30 THEN "The quantity is 30"
ELSE "The quantity is
under 30"
END
FROM OrderDetails;
Tanım ve Kullanım
CASE deyimi koşullardan geçer ve ilk koşul karşılandığında bir değer döndürür (IF-THEN-ELSE deyimi gibi). Bu nedenle, bir koşul doğru olduğunda, okumayı durduracak ve sonucu döndürecektir.
Hiçbir koşul doğru değilse, ELSE yan tümcesindeki değeri döndürür.
ELSE parçası yoksa ve hiçbir koşul doğru değilse, NULL döndürür.
Sözdizimi
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN
conditionN THEN resultN
ELSE result
END;
Parametre Değerleri
Parameter | Description |
---|---|
condition1, condition2, ...conditionN | Required. The conditions. These are evaluated in the same order as they are listed |
result1, result2, ...resultN | Required. The value to return once a condition is true |
Teknik detaylar
Çalışır: | MySQL 4.0'dan |
---|
Daha fazla örnek
Aşağıdaki SQL, müşterileri Şehir bazında sıralayacaktır. Ancak, Şehir NULL ise Ülkeye göre sıralayın:
Örnek
SELECT CustomerName, City, Country
FROM Customers
ORDER BY
(CASE
WHEN City IS NULL THEN Country
ELSE City
END);