Vergleichssuchmaschine programmieren-MySQL Abfrage

B

bruchwurst

Guest
Hallo alle zusammen,

ich hab folgende technische Frage.

Ich programmiere so etwas ähnliches wie einen Preisvergleich, wobei Kunden/Shops Ihre Kataloge per CSV Datei bereitstellen.
Für mich tauchen jetzt folgende Probleme auf:

1. Angenommen, jemand sucht nach "Blauer Unterhose Ultima von XYZ". Jetzt haben meinetwegen 8 Shops genau dieses Produkt im Shop. Allerdings kann das Produkt in jedem Shop anders heißen, z.B. "Ultima Unterhose", "XYZ Unterhose Ultima Blau", etc.
Als Ergebnis möchte ich jedoch nur ein einziges Produkt liefern und dann darauf verweisen, dass 8 Shops dieses Produkt im Angebot haben. Wie lässt sich das am besten realisieren?
Mein Ansatz war bisher, das ganze über eindeutige EAN oder ISBN Nummern laufen zu lassen, d.h. "liefere mir das Ergebnis mit der höchsten Relevanz und zähle alle Shops, die auch das Produkt anhand der EAN haben"
Dabei ist das Problem natürlich, dass ich nicht weiß, ob jeder Shop das EAN System verwendet.

2. Welche Art der MySQL-Volltextsuche ist für so eine Suchmaschine sinnvoll? (BOOLEAN oder nicht?)
Dabei taucht wieder ein Problem auf:
Angenommen, ich besitze eine Hauptkategorie "Teddybären" auf dem Vergleichsportal. Nun beinhalten also viele Produkte
(sagen wir 10% aller Produkte des Shops) den Begriff "Teddybären" im Titel oder in der Beschreibung.
Wenn jetzt jemand nach "Steiff Teddybär" sucht, so sollen natürlich nur oder zumindest als erstes die Teddybären von Steiff aufgelistet werden.
Irgendwie erhalte ich für diese Anfrage (nicht IN BOOLEAN MODE) aber erst andere Teddybär-Ergebnisse, bevor die Steiff Teddybären gelistet werden (nach Relevanz sortiert).
Benutze ich hingegen den BOOLEAN MODE, so erhalte ich irgendwie gar keine Sortierung nach Relevanz, da ja nur entschieden wird, ob ein Produkt dazugehört oder nicht.

Hat da irgendjemand Vorschläge/Ideen?
 
Zurück
Oben