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

แบบสอบถาม MySQL เพื่อค้นหาระหว่างค่าที่คั่นด้วยเครื่องหมายจุลภาคภายในหนึ่งฟิลด์?


ใช้ FIND_IN_SET สำหรับสิ่งนี้ ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable-> (-> ListOfValues ​​text-> ); เคียวรีตกลง 0 แถวได้รับผลกระทบ (0.56 วินาที)

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

mysql> แทรกลงในค่า DemoTable('10|20|30|40|50|60|100');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.18 วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+-----------------------+| ListOfValues ​​|+--------------------------------------+| 10|20|30|40|50|60|100 |+-----------------------+1 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อค้นหาระหว่างค่าที่คั่นด้วยเครื่องหมายจุลภาคภายในหนึ่งฟิลด์ -

mysql> เลือก FIND_IN_SET(100, แทนที่(ListOfValues,'|',',')) จาก DemoTable;

ผลลัพธ์

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

<ก่อน>+--------------------------------------------- ----+| FIND_IN_SET(100, แทนที่(ListOfValues,'|',',')) |+------------------------------------ -------------------+| 7 |+--------------------------------------------- --+1 แถวในชุด (0.04 วินาที)