2017-02-06 3 views
0

Wenn ich diese Abfrage versuchteSQL-Match() gegen unerkannt

SELECT name, cost FROM items WHERE MATCH (name) AGAINST ('baby') 

phpMyAdmin gibt mir eine Warnung, die besagt:

Unrecognized keyword. (near "MATCH" at position 43) 
Unexpected token. (near "(" at position 49) 
Unexpected token. (near "name" at position 50) 
Unexpected token. (near ")" at position 58) 
Unrecognized keyword. (near "AGAINST" at position 60) 
Unexpected token. (near "(" at position 68) 
Unexpected token. (near "'baby'" at position 69) 
Unexpected token. (near ")" at position 74) 

und es zeigt immer noch das richtige Ergebnis. Als ich eine andere Abfrage ausprobierte:

SELECT fisrt_name , country FROM people WHERE MATCH (first_name) AGAINST ('marr') 

Es gibt mir nur und Fehler ohne Ergebnis zu erhalten. Gibt es irgendwelche Fehler, die ich gemacht habe?

EDIT: Ich habe das phpMyAdmin aktualisiert, aber was habe ich Botschaft und neue Fehler sagen

Can't find FULLTEXT index matching the column list 
+1

Vermutlich verwenden Sie nicht MySQL, da dies ein MySQL-Konstrukt ist. –

+0

Hinzugefügt 'mysql'-Tag basierend auf der Erwähnung von" phpmyadmin " –

Antwort

1
ALTER TABLE people ADD FULLTEXT people_first_name(first_name); 

diese Versuche eine Volltextindex für Spalte vorname, und wiederholen Sie Ihre Anfrage hinzuzufügen.

+0

, dass funktioniert, eine andere Frage muss ich diese Abfrage manuell für jede Spalten oder jede andere Möglichkeit, Volltext zu Beginn der Erstellung von Tabellen hinzufügen? – Marr

+0

Sie müssen den Volltextindex nur für Spalten hinzufügen, die in Volltextabfragen verwendet werden sollen (mit dem Schlüsselwort "MATCH"). P.S. Wenn meine Antwort Ihr Problem löst, akzeptieren Sie es bitte, das wird für andere Benutzer hilfreich sein. – Germanets

+0

Sie können den Link auch für weitere Referenz https://www.petefreitag.com/item/477.cfm überprüfen –

Verwandte Themen