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

อัปเดตหลายค่าในตารางด้วย MySQL IF Statement


ให้เราสร้างตารางก่อน -

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

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

mysql> แทรกลงในค่า DemoTable716 ('100',45,86,79);ตกลง แบบสอบถาม 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงในค่า DemoTable716 ('101',67,67,99); แบบสอบถาม ตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable716 ('102',77,57,98); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable716 ('103', 45, 67,92);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.16 วินาที)

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

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

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

<ก่อนหน้า>+------+--------+---------+--------+| รหัส | Value1 | Value2 | ค่าที่ 3 |+------+---------+---------+--------+| 100 | 45 | 86 | 79 || 101 | 67 | 67 | 99 || 102 | 77 | 57 | 98 || 103 | 45 | 67 | 92 |+------+----------------------+---------+-------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อปรับปรุงค่าหลายค่าในตาราง -

mysql> อัปเดต DemoTable716 ตั้งค่า Value3=if(Value1=67 OR Value2=67,67,NULL) โดยที่ Id='101';Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที)แถวที่ตรงกัน:1 เปลี่ยน:1 คำเตือน:0

ให้เราตรวจสอบบันทึกตารางอีกครั้ง -

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

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

<ก่อนหน้า>+------+--------+---------+--------+| รหัส | Value1 | Value2 | ค่าที่ 3 |+------+---------+---------+--------+| 100 | 45 | 86 | 79 || 101 | 67 | 67 | 67 || 102 | 77 | 57 | 98 || 103 | 45 | 67 | 92 |+------+----------------------+---------+-------+4 แถวในชุด (0.00 วินาที)