Volltextsuche über mehrere Tabellen
Von: Michael Korn (blackdragon@digital-dogz.com) [Profil]
Datum: 21.10.2009 17:32
Message-ID: <9f544d11-c001-4338-8cdb-a51c292046e1@m13g2000vbf.googlegroups.com>
Newsgroup: de.comp.datenbanken.mysql
Datum: 21.10.2009 17:32
Message-ID: <9f544d11-c001-4338-8cdb-a51c292046e1@m13g2000vbf.googlegroups.com>
Newsgroup: de.comp.datenbanken.mysql
Hallo zusammen, mein Problem geht auf die dam_cat Extension für typo3 zurück. Es geht dabei um das Kategorisieren von Mediendateien, insbesondere Bildern. Nun sollen die vorhandenen Informationen durchsucht werden. Insbesondere hat jede Kategorie genau einen Parent und kann auch Kinder haben, wodurch ein Baum aufgestellt wird. Jedes Bild kann in MINDESTENS einer Kategorie sein(wobei sich bei mir nur in den Blättern des Baumes Bilder finden). Insbesondere haben jede Kategorie und jedes Bild einen Titel, eine Beschreibung und Suchbegriffe(mit Komma getrennt). Diese Spalten sollen nun nach einem oder mehreren Begriffen durchsucht werden, wobei insbesondere die AND Verknüpfung mehrere Begriffe problematisch ist. Bei den Suchbegriff sollten natürlich diverse Restriktionen von Match... Against beachtet werden(z.B. Wortlängen oder 50%-Hörde), also "IN BOOLEAN MODE". Wobei was ist dann mit den Wortlängen, z.B. See? Also nach mit Like die Suchbegriffe durchsuchen? Vereinfacht wird dies alles so gelöst: Die Kategorien in: tx_dam_cat mit uid, parent_id, title, description, keywords Die Bilder in: tx_dam mit uid, title, description, keywords Die Zuordnung von Bildern zu Kategorien: tx_dam_mm_cat mit uid_local (Fremdschlüssel auf tx_dam.uid), und uid_foreign (Fremdschlüssel auf tx_dam_cat.uid) ich habe das Problem nun notdürftig so gelöst, dass ich zuerst die Kategorien durchsuche. Dann ein Join mit tx_dam und tx_dam_mm_cat, wo ich bereits die Werte uid_foreign kenne, die auf jeden Fall drin sind. Leider geht es nicht, dass z.B. ein Bild bei drei Suchbegriffen nun rein kommt, wo der erste Begriff durch eine Kategorie, der zweite Begriff durch eine andere Kategorie(entweder ist das Bild in zwei oder die erste Kategorie hat einen Parent) und der dritte Begriff durch das Bild selbst erfüllt sind. Hätte jemand einen Tipp wie ich die Suche möglichst effizient gestalten könnte? Eine spätere, sinnige Sortierung nach der Relevanz wäre auch schon, aber erstmal nicht das Hauptproblem. Danke Michael[ Auf dieses Posting antworten ]
