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

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


หากต้องการดึงข้อมูลบันทึกจากส่วนของรายการที่คั่นด้วยเครื่องหมายจุลภาค คุณสามารถใช้ฟังก์ชัน FIND_IN_SET() ในตัวได้

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

mysql> สร้างตาราง DemoTable (รหัส int ไม่ใช่ NULL AUTO_INCREMENT คีย์หลัก ชื่อ varchar(20) เครื่องหมาย varchar(200) ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.61 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อแทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก -

mysql> แทรกลงในค่า DemoTable(Name,Marks)('Larry','98,34,56,89');Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงใน DemoTable(Name,Marks) values('Chris','67,87,92,99');Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงใน DemoTable(Name,Marks) values('Robert','33,45,69, 92');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.22 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงบันทึกจากตารางโดยใช้คำสั่งเลือก -

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

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

<ก่อนหน้า>+----+---------+-------------+| รหัส | ชื่อ | เครื่องหมาย |+----+---------+-------------+| 1 | แลร์รี่ | 98,34,56,89 || 2 | คริส | 67,87,92,99 || 3 | โรเบิร์ต | 33,45,69,92 |+----+---------+-----------+3 แถวในชุด (0.00 วินาที)

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

mysql> เลือก Id,Name จาก DemoTable โดยที่ find_in_set('99',Marks)> 0;

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

<ก่อนหน้า>+----+-------+| รหัส | ชื่อ |+---+-------+| 2 | Chris |+---+-------+1 แถวในชุด (0.00 วินาที)