Volltextsuche Über Tabellen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Volltextsuche Über Tabellen

    Hallo Community,

    wie kann ich mit den Namen der Tabelle mitgeben lassen aus einer SQL-Abfrage die mit UNION und MATCH - AGAINST arbeitet
    kleines Beispiel:

    Quellcode

    1. SELECT id,name FROM tabell1 WHERE MATCH (name) AGAINST(?)
    2. UNION
    3. SELECT id, titel FROM tabelle2 WHERE MATCH (titel) AGAINST(?);

    Problem daran ist, dass ich später in meiner Anwendung wissen will woher die ID kommt, damit ich darauf verweisen kann. Das MATCH-AGAINST sortiert mit schon die SELECTETEN ROWs nach "Wahrscheinlichkeit".

    Jemand eine Idee, bzw. Verbesserungsvorschläge?
    @Mr. T sei nicht so streng mit mir :D
    Danke euch
  • Es ist soweit, die Suche wird implementiert... jetzt versuche ich die Volltextsuche aber ich bekomme immer ein leeres Ergebnis :(

    Tabelle:

    Quellcode

    1. CREATE TABLE Ressort
    2. (
    3. idRessort VARCHAR(10) NOT NULL,
    4. name VARCHAR(50) NOT NULL,
    5. standort VARCHAR(50) NOT NULL,
    6. bereich VARCHAR(50) NOT NULL,
    7. allginfo TEXT NOT NULL,
    8. ersteller INTEGER NOT NULL,
    9. erstellungsdatum TIMESTAMP NOT NULL,
    10. FULLTEXT(name,standort,bereich,allginfo),
    11. PRIMARY KEY (idRessort),
    12. FOREIGN KEY(ersteller) REFERENCES User(idUser)
    13. );
    Alles anzeigen


    Inhalt:

    Quellcode

    1. INSERT INTO `ressort` (`idRessort`, `name`, `standort`, `bereich`, `allginfo`, `ersteller`, `erstellungsdatum`) VALUES
    2. ('INV1', 'Wissen', 'Wiesbaden', 'Das ist ein test', 'viele tests', 3, '2008-05-28 19:12:35'),
    3. ('INV2', 'CIA', 'Wiesbaden', 'hallo', 'das ist ein wissenstest', 3, '2008-05-28 19:18:59');


    Select:

    Quellcode

    1. SELECT * FROM ressort WHERE MATCH (name,standort,bereich,allginfo) AGAINST ('wissen');


    Ich verwende utf8_general_ci. Ich habe auch mal das Beispiel von mysql versucht, das funktioniert. Findet jemand den Fehler?

    Grüße,
    Sw00sh!