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

จะแยกคอลัมน์ใน MySQL ได้อย่างไร?


หากต้องการแยกคอลัมน์ คุณต้องใช้ SUBSTRING_INDEX() ใน MySQL ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> ชื่อ varchar(40) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (1.80 วินาที)

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

mysql> แทรกลงในค่า DemoTable ('John_Smith'); เคียวรีตกลง, 1 แถวได้รับผลกระทบ (0.36 วินาที)mysql> แทรกลงในค่า DemoTable ('Carol_Taylor'); เคียวรีตกลง, 1 แถวได้รับผลกระทบ (0.28 วินาที) mysql> แทรก ลงในค่า DemoTable('David_Miller');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.54 วินาที)

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

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

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

<ก่อนหน้า>+-------------+| ชื่อ |+-------------+| John_Smith || Carol_Taylor || David_Miller |+--------------+3 แถวในชุด (0.00 วินาที)

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

mysql> เลือก if(locate('_',Name)=0,'',substring_index(Name, '_', 1)) จาก DemoTable;


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

<ก่อน>+--------------------------------------------- ----+| if(locate('_',Name)=0,'',substring_index(Name, '_', 1)) |+--------------------- ------------------------------------+| จอห์น || แครอล || เดวิด |+---------------------------------------------------------- ----------+3 แถวในชุด (0.00 วินาที)