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

รับส่วนหนึ่งของสตริงตามอักขระใน MySQL หรือไม่


เรามาสร้างตารางกันก่อน -

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

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

mysql> แทรกลงในค่า DemoTable('/101/102/106'); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงในค่า DemoTable('/110/111/101'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable ('/111/14/201'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.47 วินาที) mysql> แทรกลงในค่า DemoTable ('/111/118'); แบบสอบถาม ตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+-------------+| รหัส |+-------------+| /101/102/106 || /110/111/101 || /11/11/201 || /111/118 |+--------------+4 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามที่จะได้รับส่วนหนึ่งของสตริงตามอักขระ -

mysql> เลือก SUBSTRING_INDEX(SUBSTRING_INDEX(Code,'/',3),'/',-1) จาก DemoTable

ผลลัพธ์

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

<ก่อน>+--------------------------------------------- --------+| SUBSTRING_INDEX(SUBSTRING_INDEX(รหัส,'/',3),'/',-1) |+----------------------------- ------------------------------------+| 102 || 111 || 114 || 118 |+---------------------------------------------------------- ------+4 แถวในชุด (0.00 วินาที)