Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL LIKE %string% tidak cukup memaafkan. Ada lagi yang bisa saya gunakan?

Jika Anda menggunakan MyISAM, Anda dapat menggunakan pengindeksan teks lengkap. Lihat tutorial ini

Jika Anda menggunakan mesin penyimpanan yang berbeda, Anda dapat menggunakan mesin teks lengkap pihak ketiga seperti sphinx, yang dapat bertindak sebagai mesin penyimpanan untuk mysql atau server terpisah yang dapat ditanyakan.

Dengan teks lengkap MySQL mengindeks pencarian di A J Kelly akan cocok dengan AJ Kelly (tidak untuk membingungkan tetapi A, J dan AJ akan diabaikan karena mereka terlalu pendek secara default dan akan cocok dengan Kelly.) Umumnya Fulltext jauh lebih memaafkan (dan biasanya lebih cepat daripada LIKE '%string%') karena memungkinkan sebagian pertandingan yang kemudian dapat diberi peringkat berdasarkan relevansi.

Anda juga dapat menggunakan SOUNDEX untuk membuat pencarian lebih memaafkan dengan mengindeks padanan fonetik kata dan mencarinya dengan menerapkan SOUNDEX pada istilah pencarian Anda dan kemudian menggunakannya untuk mencari indeks. Dengan soundex mary , marie , dan marry semua akan cocok, misalnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pernyataan pilih MySQL dengan CASE atau IF ELSEIF? Tidak yakin bagaimana mendapatkan hasilnya

  2. MySQL:pilih yang paling cocok?

  3. MySQL menghitung kolom pada nilai tertentu

  4. Isi JFreechart TimeSeriesCollection dari Mysql DB?

  5. MySQLSyntaxErrorException dekat ? ketika mencoba menjalankan Pernyataan Siap