Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เราสามารถใช้ส่วนคำสั่ง WHERE ภายในคำสั่ง MySQL CASE ได้หรือไม่


สำหรับสิ่งนี้ ให้ใช้คำสั่ง CASE WHEN ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1040( Value1 int, Value2 int, Value3 int) แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.65 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable1040 (10,30,1); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า DemoTable1040 (40,20,50) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที )mysql> แทรกลงในค่า DemoTable1040 (80,90,100) แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.11 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable1040;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+---------+---------+-------+| Value1 | Value2 | ค่าที่ 3 |+---------+---------+-------+| 10 | 30 | 1 || 40 | 20 | 50 || 80 | 90 | 100 |+--------+ --------+--------+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามที่จะใช้กรณีเมื่อ -

mysql> เลือกกรณีเมื่อ (Value1=40 AND Value2=20) จากนั้น Value2 else Value1 สิ้นสุดเป็น SelectValue จาก DemoTable1040

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+--------------+| เลือกค่า |+--------------+| 10 || 20 || 80 |+--------------+3 แถวในชุด (0.00 วินาที)