Suchabfrage! Bitte helft mir!! **

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

  • Suchabfrage! Bitte helft mir!! **

    Hallo SQL-Profis!
    Ich habe leider keine allzu große Ahnung von Mysql und hoffe, dass Ihr mir evtl weiterhelfen könnt. Ich habe bereits das Forum durchforstet aber nichts passendes gefunden.

    Ich habe eine Datenbank mit zwei Spalten ('field1' und 'field2'). Jetzt will ich eine Suchabfrage benutzen, die mir zu einem Suchbegriff den Datensatz mit der größten Übereinstimmung liefert. Durchsucht werden sollen beide Spalten. Wenn der Suchbegriff aus 2 oder mehr Wörtern besteht sollte die Suche daran auch nicht scheitern.
    Bisher habe ich eine Fulltext-Suche benutzt. Diese funktioniert super bei langen Texten, scheitert allerdings bei einer Datenbank wo in jeder Zelle nur ein einziger Begriff eingegeben ist, da sie ja eher für längere Texte konzipiert ist.

    Dann habe ich es mit dem folgendem mysql-string versucht.

    PHP-Code:
    SELECT FROM table WHERE (`field1LIKE '%Suchstring%' OR `field2LIKE '%Stuchstring%'ORDER BY ??? DESC LIMIT 1 
    Dieser scheitert aber wenn ich ein Suchbegriff aus 2 oder mehr Wörtern eingebe. Außerdem weiß ich, nicht wie ich das Ergebnis sortieren kann, dass der Datensatz mit der größten Übereinstimmung ausgegeben wird.

    Wenn mir jemand helfen könnte wäre das echt super. So langsam verzweifele ich wirklich...
    Danke!

    Sebastian

  • #2
    schon mal einen fulltext-index über beide Felder ausprobiert?

    where match (field1, field2) against 'Suchstring'
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      ja, habe ich schon probiert. Eine Fulltext-Abfrage kann man ja auch in der Regel super nach Übereinstimmungen sortieren. Leider liefert mir die Abfrage keine Ergebnisse wenn pro Zelle nur ein bis zwei Wörter angegeben sind (wie es bei mir der Fall ist). Sonst ist die Fulltext-Suche ja wirklich erste Wahl!

      Kommentar

      Lädt...
      X