Devdit
 

CASE WHEN SQL คืออะไร

2.7K

CASE WHEN คือคำสั่งของ SQL ใช้ในการตรวจสอบเงื่อนไขสำหรับการแสดงผลข้อมูล โดย CASE WHEN มีลักษณะเดียวกับ if else ในภาษาต่างๆ บทความนี้คุณจะได้เรียนรู้วิธีการใช้งาน CASE WHEN พร้อมตัวอย่างประกอบ ผลลัพธ์ และคำอธิบาย SQL

 

ตัวอย่าง รูปแบบคำสั่ง CASE WHEN SQL

CASE 
WHEN เงื่อนไข THEN ผลลัพธ์
WHEN เงื่อนไข THEN ผลลัพธ์
ELSE ผลลัพธ์
END

ตัวอย่างรูปแบบการใช้คำสั่ง คือเริ่มจาก CASE และกำหนด WHEN ตามด้วยเงื่อนไข หากเงื่อนไขดังกล่าวเป็นจริงจะทำงานใน THEN โดยสามารถมี WHEN THEN มากกว่า 1 ส่วน กรณีไม่เข้าเงื่อนไขใดๆ ของ WHEN จะทำงานใน ELSE และจบ ASE WHEN SQL ด้วยคำสั่ง END

 

ตัวอย่าง การใช้คำสั่ง CASE WHEN SQL

SELECT name, price,
    CASE
        WHEN price BETWEEN 300 AND 500 THEN price * 0.97
        WHEN price > 500 THEN price * 0.95
        ELSE price
    END AS discounted_price
FROM products

จากตัวอย่างการใช้คำสั่ง CASE WHEN SQL สามารถอธิบายได้ดังนี้

1. แสดงข้อมูลจากตาราง products ประกอบด้วย field name, price

2. WHEN price BETWEEN 300 AND 500 คือกรณีถ้าราคาสินค้า (price) อยู่ในช่วง 300 - 500 บาท ให้ลด 3% ด้วย THEN price * 0.97

3. WHEN price > 500 กรณีราคาสินค้ามากกว่า 500 ขึ้นไปให้ลด 5% ด้วย THEN price * 0.95

4. ELSE price กรณีราคาสินค้าไม่เข้าเงื่อนไข WHEN THEN ให้แสดงที่ ELSE

5. END AS discounted_price คือ ตั้งชื่อ field ราคาสินค้าที่ลด 3% ใหม่ว่า discounted_price

สรุป คำสั่ง CASE WHEN ของ SQL มีประโยชน์อย่างมากสำหรับสร้างเงื่อนไขการแสดงผล โดยมีการทำงานในลักษณะเดียวกับ if else ของภาษาอื่นๆ คำสั่ง CASE WHEN ช่วยเพิ่มประสิทธิภาพ และเงื่อนไขการแสดงผลข้อมูลด้วย SQL ได้อย่างสมบูรณ์

แก้ไข 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ