Abfrage über mehrere Tabellen?
am 08.11.2006 16:54:48 von Markus SchmidtHallo NG!
Habe hier bei eine SQL Abfrage so leichte Bretter am Hirn - evtl. hat da
jemand einen guten Ansatz für mich :)
die Ursprungs-Abfrage sieht derzeit etwa so aus:
SELECT
tabelle.*,
CONCAT(adressen.firma, ' ', adressen.vorname, ' ',adressen.nachname)
AS therapeut,
adressen.linkname AS linkname,
MATCH (schwerpunkte, methoden, vorstellung, ausbildung, therapien)
AGAINST ('$wort' IN BOOLEAN MODE) AS rang,
FROM
profile
LEFT JOIN
adressen on adressen.uid = profile.therapeut
WHERE
MATCH (schwerpunkte, methoden, vorstellung, ausbildung, therapien)
AGAINST ('$wort' IN BOOLEAN MODE)
OR
MATCH (adressen.firma, adressen.nachname, adressen.vorname,
adressen.bezeichnung, adressen.kurzbeschreibung, adressen.keywords,
adressen.ort, adressen.bundesland, adressen.land) AGAINST ('$wort' IN
BOOLEAN MODE)
OR
MATCH (, methoden, vorstellung, ausbildung, therapien) AGAINST
('$wort' IN BOOLEAN MODE)
ORDER BY rang
soweit dazu.
Jetzt gibt es eine 3. Tabelle "Leistungen" diese enthält:
Therapeuten-ID, Therapie-ID
und eine 4. Tabelle
Therapie-ID, Therapie-Name
ein Therapeut kann in "Leistungen" mehrere oder keinen Eintrag haben. Die
obere Abfrage soll jetzt so erweitert werden, das ich die NAMEN der
Therapien auch als
"OR MATCH ("alle gefundenen therapienamen") AGAINST ( meindollessuchwort) "
abfragen kann...
Hat da jemand einen brauchbaren Ansatz? Oder ist es evtl. besser, das Ganze
gleich in 2 Abfragen zu packen?
Bin für alle Schandtaten zu haben!
Schönen Dank und Viele Grüße
Markus