MySQL und PHP: Verbesserung der Levenshtein-Ähnlichkeit mit einer einzigen Abfrage
Das bereitgestellte PHP-Code-Snippet veranschaulicht die Verwendung der Levenshtein-Bearbeitungsdistanzfunktion Vergleichen Sie Benutzereingaben mit in einer MySQL-Datenbank gespeicherten Begriffen. Allerdings kann die Verarbeitung einer großen Anzahl von Begriffen in PHP ineffizient sein.
Um den Prozess zu optimieren, ist es wünschenswert, die Ähnlichkeitsberechnung in eine einzige MySQL-Abfrage zu verlagern. Dies erfordert eine Levenshtein-Funktion in MySQL.
Der folgende Code zeigt, wie Sie die MySQL-Funktion levenshtein() verwenden, um dies zu erreichen:
$word = mysql_real_escape_string($word); mysql_qery("SELECT `term` FROM `words` WHERE levenshtein('$word', `term`) BETWEEN 0 AND 4");
Diese Abfrage sucht nach Begriffen in der Worttabelle, die haben einen Levenshtein-Abstand zwischen 0 und 4 von der Benutzereingabe. Durch die Verwendung dieser modifizierten Abfrage wird der Prozess vereinfacht, die Anzahl der Datenbankabfragen reduziert und die Gesamtleistung verbessert.
Das obige ist der detaillierte Inhalt vonWie kann ich Levenshtein-Ähnlichkeitsvergleiche zwischen Benutzereingaben und einer MySQL-Datenbank optimieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!