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

แบบสอบถาม MySQL เพื่อแสดงสตริงย่อยก่อนอักขระพิเศษในสตริง


ใช้วิธี LOCATE() และ SUBSTRING() สำหรับสิ่งนี้ใน MySQL ให้เราสร้างตารางก่อน -

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

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

mysql> แทรกลงในค่า DemoTable ('Introduction To Java'); Query OK, 1 แถวที่ได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงในค่า DemoTable ('Introduction - To MySQL'); Query OK, 1 แถวได้รับผลกระทบ (0.16) วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+-------------------------+| ชื่อเรื่อง |+-----------------------------------+| บทนำสู่ Java || บทนำ - ถึง MySQL |+-------------------------+2 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงสตริงย่อยก่อนอักขระพิเศษในสตริงย่อย -

mysql> เลือกเฉพาะ -> if(LOCATE(' - ',Title)>0, SUBSTRING(Title, 1, LOCATE(' - ', Title)), Title) จาก DemoTable;

ผลลัพธ์

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

<ก่อน>+--------------------------------------------- -------------------------------------+| if(LOCATE(' - ',Title)>0, SUBSTRING(Title, 1, LOCATE(' - ', Title)), Title) |+----------------- -------------------------------------------------- ----+| บทนำสู่ Java || บทนำ |+---------------------------------------------------------- ------------------------------+2 แถวในชุด (0.00 วินาที)