عبارت CASE
ایجاد شرط در داخل SELECT با عبارت CASE — معادل if-else در SQL.
عبارت CASE چیست؟
CASE مانند if-else در برنامهنویسی عمل میکند. بر اساس یک شرط، مقدار متفاوتی برمیگرداند.
ساختار کلی
CASE
WHEN شرط۱ THEN نتیجه۱
WHEN شرط۲ THEN نتیجه۲
ELSE نتیجه_پیشفرض
END
مثال: دستهبندی سن
SELECT name, age,
CASE
WHEN age < 19 THEN 'جوان'
WHEN age BETWEEN 19 AND 21 THEN 'متوسط'
ELSE 'بزرگسال'
END AS age_group
FROM students;
مثال: تبدیل نمره به وضعیت
SELECT student_id, subject, score,
CASE
WHEN score >= 18 THEN 'عالی'
WHEN score >= 15 THEN 'خوب'
WHEN score >= 12 THEN 'متوسط'
ELSE 'ضعیف'
END AS status
FROM scores;
عبارت CASE میتواند در SELECT، UPDATE، ORDER BY و حتی HAVING استفاده شود.
این مبحث بخشی از دوره آموزش کامل SQL است.