FULLTEXT

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • FULLTEXT

    Hiho
    folgendes problem:
    ich hab eine spalte (t_long) an einen Fulltext-Index gebunden.
    wenn ich dann ein query:
    Code:
    select * from glossar match(t_long) against('Webdesign');
    ausführe bringt er mir das gewünschte resultat, wenn nur EIN datensatz das suchwort enthält. aber nicht, wenn es in MEHREREN datensätzen vorkommt. dann nämlich gar keine.
    wie bring ich es fertig, daß der mir alle datensätze auswirft, wo das suchwort drinsteht ?

    wär für schnelle hilfe dankbar.
    mfg
    Nico
    Datenbanken sind ja schon was lustiges. Aber ich brauch auch Content, verdammich

  • #2
    Hi!
    It is, really, the desired behavior - a natural language query should not return every second row in 1GB table.

    A word that matches half of rows in a table is less likely to locate relevant documents. In fact, it will most likely find plenty of irrelevant documents. We all know this happens far too often when we are trying to find something on the Internet with a search engine. It is with this reasoning that such rows have been assigned a low semantical value in this particular dataset.
    Die Lösung ist eine "FULLTEXT IN BOOLEAN MODE"-Suche, welche aber erst ab mySQL Version 4.01 implementiert wurde.

    select * from glossar where match(t_long) against('+Webdesign' in boolean mode);

    Grüsse
    FreeBSD - Unleash the daemon inside your PC

    Kommentar

    Lädt...
    X