عبارت 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 است.

ابزارهای مرتبط