สำหรับสิ่งนี้ คุณสามารถใช้ IF() ร่วมกับคำสั่ง UPDATE ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable1601 -> ( -> FirstName varchar(20) , -> LastName varchar(20) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.53 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable1601 ('John','Doe');Query OK, 1 แถวได้รับผลกระทบ (0.10 วินาที)mysql> แทรกลงในค่า DemoTable1601 ('Adam',''); Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า DemoTable1601 ('David', 'Miller'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable1601 ('Chris',''); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.11 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก * จาก DemoTable1601;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+----------+| ชื่อจริง | นามสกุล |+-----------+----------+| จอห์น | โด || อดัม | || เดวิด | มิลเลอร์ || คริส | |+-----------+----------+4 แถวในชุด (0.00 วินาที)ต่อไปนี้เป็นแบบสอบถามเพื่อปรับปรุงคอลัมน์เป็นโมฆะหรือค่าของมัน -
mysql> อัปเดต DemoTable1601 ตั้งค่า LastName=if(LastName='',NULL,LastName);Query OK, 2 แถวได้รับผลกระทบ (0.22 วินาที)แถวที่ตรงกัน:4 เปลี่ยน:2 คำเตือน:0
ให้เราตรวจสอบบันทึกตารางอีกครั้ง -
mysql> เลือก * จาก DemoTable1601;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+----------+| ชื่อจริง | นามสกุล |+-----------+----------+| จอห์น | โด || อดัม | NULL || เดวิด | มิลเลอร์ || คริส | NULL |+-----------+----------+4 แถวในชุด (0.00 วินาที)