Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengoptimumkan Perbandingan Kesamaan Levenshtein Antara Input Pengguna dan Pangkalan Data MySQL?

Bagaimanakah Saya Boleh Mengoptimumkan Perbandingan Kesamaan Levenshtein Antara Input Pengguna dan Pangkalan Data MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-13 02:44:13619semak imbas

How Can I Optimize Levenshtein Similarity Comparisons Between User Input and a MySQL Database?

MySQL dan PHP: Meningkatkan Kesamaan Levenshtein dengan Pertanyaan Tunggal

Coretan kod PHP yang disediakan menggambarkan penggunaan fungsi jarak edit Levenshtein untuk bandingkan input pengguna dengan istilah yang disimpan dalam pangkalan data MySQL. Walau bagaimanapun, pemprosesan sejumlah besar istilah dalam PHP boleh menjadi tidak cekap.

Untuk mengoptimumkan proses, adalah wajar untuk memindahkan pengiraan persamaan ke dalam satu pertanyaan MySQL. Ini memerlukan fungsi Levenshtein dalam MySQL.

Kod berikut menunjukkan cara menggunakan fungsi MySQL levenshtein() untuk mencapai ini:

$word = mysql_real_escape_string($word);
mysql_qery("SELECT `term` FROM `words` WHERE levenshtein('$word', `term`) BETWEEN 0 AND 4");

Pertanyaan ini mencari istilah dalam jadual perkataan yang mempunyai jarak Levenshtein antara 0 dan 4 dari input pengguna. Dengan menggunakan pertanyaan yang diubah suai ini, proses dipermudahkan, bilangan pertanyaan pangkalan data dikurangkan dan prestasi keseluruhan dipertingkatkan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengoptimumkan Perbandingan Kesamaan Levenshtein Antara Input Pengguna dan Pangkalan Data MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn