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

เลือกจากคอลัมน์อื่นหากค่าที่เลือกคือ '0' ใน MySQL?


สำหรับสิ่งนี้ ให้ใช้ IF() ใน MySQL ไวยากรณ์มีดังนี้ −

เลือก IF(yourColumnName1=0,yourColumnName2,yourColumnName1) เป็น anyAliasName จาก yourTableName;

ให้เราสร้างตาราง -

mysql> สร้างตาราง demo30−> (−> id int ไม่ใช่ null auto_increment คีย์หลัก,−> value int,−> original_value int−> )−>;Query OK, 0 แถวได้รับผลกระทบ (1.87 วินาที)

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

mysql> แทรกลงในค่า demo30(value,original_value) (50,10);เคียวรีตกลง, 1 แถวได้รับผลกระทบ (0.10 วินาที)mysql> แทรกลงในค่า demo30(value,original_value) (1000,0);เคียวรีตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า demo30(value,original_value) (0,40); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงใน demo30(value,original_value) ค่า (30,0);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.09 วินาที)

แสดงบันทึกจากตารางโดยใช้คำสั่ง select -

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

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

<ก่อนหน้า>+----+-------+----------------+| id | ค่า | original_value |+----+-------+----------------+| 1 | 50 | 10 || 2 | 1000 | 0 || 3 | 0 | 40 || 4 | 30 | 0 |+----+-------+----------------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อเลือกจากคอลัมน์อื่นหากค่าที่เลือกคือ '0' ใน MySQL -

mysql> เลือก id ถ้า (original_value=0,value,original_value) เป็น Result−> จาก demo30;

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

<ก่อนหน้า>+----+---------+| id | ผลลัพธ์ |+---+-------+| 1 | 10 || 2 | 1000 || 3 | 40 || 4 | 30 |+----+-------+4 แถวในชุด (0.00 วินาที)