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

ตั้งค่าทางเลือกของส่วนคำสั่ง WHERE สำหรับแต่ละฟิลด์ SELECT ใน MySQL


คุณสามารถใช้คำสั่ง CASE -

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

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

mysql> แทรกลงในค่า DemoTable1988 (10,7,500) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.21 วินาที) mysql> แทรกลงในค่า DemoTable1988 (7,9,400) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรก ลงในค่า DemoTable1988 (8,7,200); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DemoTable1988 (7,4,300); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)

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

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

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

<ก่อนหน้า>+---------+---------+-------+| Value1 | Value2 | ราคา |+--------+---------+-------+| 10 | 7 | 500 || 7 | 9 | 400 || 8 | 7 | 200 || 7 | 4 | 300 |+--------+---------+-------+4 แถวในชุด (0.00 วินาที)

นี่คือการสืบค้นไปยังส่วนคำสั่ง WHERE สำหรับแต่ละฟิลด์ SELECT:

mysql> เลือกผลรวม ( กรณีที่ Value2=7 แล้ว Price else 0 สิ้นสุด)- sum (กรณีที่ Value1=7 แล้ว Price else 0 สิ้นสุด) เป็นผลลัพธ์จาก DemoTable1988;

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

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| 0 |+--------+1 แถวในชุด (0.23 วินาที)