Ich brauche Produkte zu suchen und sie nach Relevanz sortiert werden, denn das habe ich versucht, diese MySQL-AbfrageMySQL Volltextsuche nach Relevanz mit Wildcard
SELECT *, MATCH(`SubProductName`) AGAINST ('+app*' IN BOOLEAN MODE) AS
relevance FROM `tblsubproducts1` WHERE MATCH(SubProductName) AGAINST
('+app*' IN BOOLEAN MODE) ORDER BY relevance DESC
Diese Abfrage zum Beispiel gibt: Apple Thunderbolt, Apple TV ... als Ergebnisse. was ist richtig.
Aber wenn ich mit '+usb*'
versuchen es keine Zeilen zurückgibt, während die Datenbank eine Zeile mit SubProductName
USB-C Charge Cable
enthält, die ich durch Abgleich gegen '+cable*'
Zur Klärung finden, möchte ich die Suche mit teilweise arbeiten Wörter wie "App" für Apple, weshalb ich *
hinzugefügt habe, aber warum es nicht immer scheint zu arbeiten ist, was mich hier verwirrt. Ist es die -
in USB-C
oder ...?
das ist egal, was die Suchzeichenfolge richtig ist? es zählt nur mit dem Index? – vlatkozelka
mit anderen Worten, da es mit "App" für Apple funktioniert, ist das Problem, dass "USB" nicht indiziert ist, nicht, dass die Suchzeichenfolge usb ist? – vlatkozelka
@vlatkozelka. . . Es entspricht nicht "USB-C", da Bindestrich als Trennzeichen für Wörter verwendet wird. –