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

จะแยกรหัสพื้นที่ออกจากหมายเลขโทรศัพท์ด้วย MySQL ได้อย่างไร


สมมติว่าเรามีรายชื่อหมายเลขโทรศัพท์และเราต้องการรับรหัสพื้นที่ รหัสพื้นที่เหล่านี้คือ 3 หลักแรกของหมายเลขโทรศัพท์ ใช้ฟังก์ชัน LEFT() จาก MySQL สำหรับสิ่งนี้

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

mysql> สร้างตาราง DemoTable-> (-> AreaCodes varchar(100)-> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.62 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก สมมติว่าเราได้รวมหมายเลขโทรศัพท์แล้ว -

mysql> แทรกลงในค่า DemoTable ('90387568976'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable ('90389097878' แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงใน ค่า DemoTable ('56789008799'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.10 วินาที) mysql> แทรกลงในค่า DemoTable ('45679008571'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.23 วินาที) mysql> แทรกลงในค่า DemoTable ('45679008536);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.12 วินาที)

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

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

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

<ก่อนหน้า>+-----------+| รหัสพื้นที่ |+-----------+| 90387568976|| 90389097878|| 56789008799|| 45679008571|| 45679008536|+-----------+5 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อรับรหัสพื้นที่ที่มี -

mysql> เลือก LEFT(AreaCodes,4) ที่แตกต่างจาก DemoTable

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

<ก่อนหน้า>+-------------------+| ซ้าย(รหัสพื้นที่,4) |+-------------------+| 9038 || 5678 || 4567 |+-------------------+3 แถวในชุด (0.13 วินาที)