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

ค้นหาสตริงในฐานข้อมูล MySQL อย่างรวดเร็วหรือไม่


ใช้การค้นหา FULLTEXT เพื่อค้นหาสตริงอย่างรวดเร็ว ให้เราสร้างตารางก่อน -

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

นี่คือข้อความค้นหาเพื่อสร้างการค้นหาข้อความแบบเต็ม -

mysql> สร้างดัชนี fulltext ได้เร็วขึ้น_title บน DemoTable1554(Title);ตกลง สืบค้นได้ 0 แถวได้รับผลกระทบ 1 คำเตือน (7.09 วินาที) บันทึก:0 รายการซ้ำ:0 คำเตือน:1

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

mysql> แทรกลงในค่า DemoTable1554 ('John กำลังทำงานบนฐานข้อมูล MySQL'); Query OK, 1 แถวได้รับผลกระทบ (0.26 วินาที)mysql> แทรกลงในค่า DemoTable1554 ('Adam Smith ทำงานบนภาษา Java'); แบบสอบถามตกลง , 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงในค่า DemoTable1554 ('John smith กำลังทำงานในภาษา Python'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.17 วินาที)

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

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

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

<ก่อนหน้า>+------------------------------------------+| ชื่อเรื่อง |+------------------------------------------+| John กำลังทำงานบนฐานข้อมูล MySQL || Adam Smith กำลังทำงานเกี่ยวกับภาษา Java || John smith กำลังทำงานเกี่ยวกับ Python Language |+----------------------------------------- -+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อค้นหาสตริงในฐานข้อมูล MySQL อย่างรวดเร็ว เรากำลังค้นหาสตริง “ภาษา” –

mysql> เลือก * จาก DemoTable1554 โดยที่การจับคู่ (ชื่อ) กับ ('ภาษา' ในโหมดบูลีน);

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

<ก่อนหน้า>+------------------------------------------+| ชื่อเรื่อง |+------------------------------------------+| Adam Smith กำลังทำงานเกี่ยวกับภาษา Java || John smith กำลังทำงานเกี่ยวกับ Python Language |+----------------------------------------- -+2 แถวในชุด (0.00 วินาที)