บทช่วยสอนMySQL

หน้าแรกของ MySQL แนะนำ MySQL MySQL RDBMS

MySQL SQL

MySQL SQL MySQL SELECT MySQL WHERE MySQL และหรือไม่ใช่ MySQL สั่งซื้อโดย MySQL INSERT INTO ค่า NULL ของ MySQL MySQL UPDATE MySQL ลบ MySQL LIMIT MySQL MIN และ MAX MySQL COUNT, AVG, SUM MySQL ชอบ MySQL Wildcards MySQL IN MySQL ระหว่าง MySQL นามแฝง MySQL เข้าร่วม เข้าร่วม MySQL ภายใน MySQL ซ้ายเข้าร่วม MySQL ขวาเข้าร่วม MySQL CROSS เข้าร่วม MySQL เข้าร่วมด้วยตนเอง MySQL UNION กลุ่ม MySQL โดย MySQL มี MySQL EXISTS MySQL ใด ๆ ทั้งหมด MySQL INSERT SELECT กรณี MySQL ฟังก์ชั่น MySQL Null ความคิดเห็น MySQL ตัวดำเนินการ MySQL

ฐานข้อมูลMySQL

MySQL สร้าง DB MySQL Drop DB MySQL สร้างตาราง MySQL Drop Table MySQL Alter Table ข้อจำกัดของ MySQL MySQL ไม่ว่าง MySQL Unique คีย์หลัก MySQL MySQL Foreign Key MySQL Check MySQL Default MySQL สร้างดัชนี MySQL Auto Increment MySQL Dates มุมมอง MySQL

การอ้างอิงMySQL

ประเภทข้อมูล MySQL ฟังก์ชัน MySQL

ตัวอย่างMySQL

ตัวอย่าง MySQL แบบทดสอบ MySQL แบบฝึกหัด MySQL

คำชี้แจงกรณี MySQL


คำชี้แจงกรณีของ MySQL

คำCASEสั่งจะผ่านเงื่อนไขและส่งกลับค่าเมื่อตรงตามเงื่อนไขแรก (เช่นคำสั่ง if-then-else) ดังนั้น เมื่อเงื่อนไขเป็นจริง เงื่อนไขนั้นจะหยุดอ่านและส่งคืนผลลัพธ์ หากไม่มีเงื่อนไขใด ๆ เป็นจริง จะส่งกลับค่าในส่วนELSEคำสั่ง

หากไม่มีELSEส่วนใดและไม่มีเงื่อนไขใดเป็นจริง จะส่งกลับค่า NULL

ไวยากรณ์กรณี

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    WHEN conditionN THEN resultN
    ELSE result
END;

ฐานข้อมูลสาธิต

ด้านล่างนี้คือการเลือกจากตาราง "OrderDetails" ในฐานข้อมูลตัวอย่าง Northwind:

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40


ตัวอย่างกรณี MySQL

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);