วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการใช้ฟังก์ชัน MySQL SUBSTRING_INDEX() ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable( ZipCode varchar(50)); เคียวรีตกลง 0 แถวได้รับผลกระทบ (2.02 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable ('52533-909'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.23 วินาที) mysql> แทรกลงในค่า DemoTable ('12345-674'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.27 วินาที )mysql> แทรกลงในค่า DemoTable ('89893-890'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.21 วินาที) mysql> แทรกลงในค่า DemoTable ('AAAAA-783'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+| รหัสไปรษณีย์ |+-----------+| 52533-909 || 12345-674 || 89893-890 || AAAAA-783 |+-----------+4 แถวในชุด (0.00 วินาที)ต่อไปนี้เป็นแบบสอบถามเพื่อลบ -XXX จากรหัสไปรษณีย์โดยใช้ substring_index() -
mysql> อัปเดต DemoTable set ZipCode=substring_index(ZipCode, '-', 1); ตกลง ตกลง 4 แถวได้รับผลกระทบ (0.44 วินาที) แถวที่ตรงกัน :4 เปลี่ยนแล้ว :4 คำเตือน :0
ให้เราตรวจสอบบันทึกตารางอีกครั้ง -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+---------+| ZipCode |+---------+| 52533 || 12345 || 89893 || AAAAA |+---------+4 แถวในชุด (0.00 วินาที)