Suchen Sie in einem mysqldb mit php

stimmen
2

Wie eine große Suche innerhalb einer mysqldb implementieren - innerhalb einer Tabelle, wenn ich mit ‚... LIKE% bla% ....‘ Suche nicht alle Einträge gefunden werden würden - wenn innerhalb eines Wortes zum Beispiel bla. eine Suche mit soundex wäre toll - aber wenn ich das Handbuch lesen muß ich einen soundex-Index suchen soundex-Werte schaffen?

So ist die Frage, was ist die „best practice“ ein Schlüsselwort in einer einfachen Spalte „Titel“ oder someting sonst eine gute db-Suche vor zu schreiben.

Tschüss

Veröffentlicht am 09/12/2008 um 16:59
quelle vom benutzer
In anderen Sprachen...                            


2 antworten

stimmen
2

Wenn Sie nicht bis zu Installation und Verwendung von Sphinx sind, dann können Sie versuchen, in der Volltextsuche-Funktionen wie „MATCH“ gebaut einige von MySQL verwenden

Auf diese Weise können Sie die Volltextsuche zu tun und sogar stuft Ergebnisse mit Relevanz sortiert. Sie können Abfragen wie schreiben:

SELECT id, col1, col2, MATCH(col1, col2) AGAINST('some text' IN NATURAL LANGUAGE MODE) AS relevance FROM table1;

Sie können sogar die Erweiterung der Suchanfrage zu holen auf andere eng verwandte Begriffe verwenden. Zum Beispiel, wenn der Benutzer sucht nach „Datenbank“ und die oberen relevantesten Ergebnissen „mysql“ enthält, dann wird der mysql auch für „mysql“ suchen, weil sie festgestellt hat, dass die „mysql“ Begriff eng mit der „Datenbank“ verwandt Begriff der Benutzer gesucht.

http://dev.mysql.com/doc/refman/5.1/en/fulltext-query-expansion.html

Beantwortet am 09/11/2009 um 02:09
quelle vom benutzer

stimmen
2

Für Textsuche haben Sie zwei Möglichkeiten neben einer LIKE - Klausel - FULLTEXT- Index oder mit speziellen Indizierungs Engines wie (die MyISAM Mittel verwenden) Lucene oder Sphinx .

Persönlich würde ich empfehlen Sphinx verwenden, hat es eine hervorragende Integration mit MySQL und PHP und ist sehr schnell für die Textsuche (und andere Anfragen als auch).

Beantwortet am 09/12/2008 um 17:04
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more