بیانیه SQL CASE
این CASE
عبارت شرایط را طی می کند و وقتی اولین شرط برآورده می شود ، مقدار را برمی گرداند (مانند عبارت if-then-else). بنابراین ، هنگامی که یک شرط درست شد ، خواندن متوقف می شود و نتیجه را برمی گرداند. اگر هیچ شرطی درست نباشد ، مقدار را در ELSE
بند برمی گرداند .
اگر هیچ ELSE
قسمتی وجود نداشته باشد و هیچ شرطی صادق نباشد ، NULL را برمی گرداند.
نحو CASE
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 WHEN conditionN THEN resultN ELSE result END;
پایگاه داده نسخه ی نمایشی
در زیر مجموعه ای از جدول “OrderDetails” در پایگاه داده نمونه Northwind آمده است:
نمونه های SQL CASE
SQL زیر شرایط را طی می کند و وقتی اولین شرط برآورده می شود ، مقدار را برمی گرداند:
مثال
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 AS QuantityText FROM OrderDetails;
SQL زیر مشتریان را بر اساس شهر سفارش می دهد. با این حال ، اگر شهر NULL است ، سپس بر اساس کشور سفارش دهید:
مثال
SELECT CustomerName, City, Country FROM Customers ORDER BY (CASE WHEN City IS NULL THEN Country ELSE City END);
0 دیدگاه