bartman336
Mitglied
Hi Leute,
ich hab hier grade mal nen Problem und vielleicht kann mir ja einer von euch helfen. Und zwar würde ich gerne bei einer Suche innerhalb einer MySql DB (bzw Tabelle) eine art Trefferqoute ermitteln sprich ich habe zum Beispiel folgende Einträge
und möchte jetzt gerne (mit einer "oder" verknüpfung) nach den Einträgen "e c" suchen.
Das funktioniert ja auch soweit, allerdings bekomme ich dann die ergebnisse in der Reihenfolge in der er sie findet. (order by titel)
Ergebnis:
1. a b c
2. b e
3. d c a
4. e b c
Wobei ich eigentlich den Eintrag mit der
höchsten Trefferqoute brauchen würde also "e b c", aber die Anderen wo nur ein Suchbegriff drin vorkommt nicht vernachlässigen kann.
Hat irgendeiner von euch eine "einfache" Idee? Mir fallen nämlich im Moment nur Zwei ein, die etwas kompliziert sind.
Idee Nr. 1:
Das Ergebnis Array nochmal komplett durchsuchen und die Häufigkeiten der Wörter zu einer Zahl addieren und dann anhand dieser Zahl das Array sortieren.
(oder geht das vielleicht schon direkt mit Mysql?)
Idee Nr. 2:
Ähnlich wie eine Forensoftware (vbulletin macht das zum Beispiel)
einen Suchindex anlegen und dann
mit diesem Index die Ergebnisse suchen.
Naja vielleicht fällt euch ja dazu was ein bevor ich mich wieder an die Arbeit mache (ist ja bei dieser Hitze nicht zu ertragen, tagsüber zu arbeiten *g*)
ich hab hier grade mal nen Problem und vielleicht kann mir ja einer von euch helfen. Und zwar würde ich gerne bei einer Suche innerhalb einer MySql DB (bzw Tabelle) eine art Trefferqoute ermitteln sprich ich habe zum Beispiel folgende Einträge
Code:
id | titel
1 | a b c
2 | b e
3 | d c a
4 | e b c
und möchte jetzt gerne (mit einer "oder" verknüpfung) nach den Einträgen "e c" suchen.
Das funktioniert ja auch soweit, allerdings bekomme ich dann die ergebnisse in der Reihenfolge in der er sie findet. (order by titel)
Ergebnis:
1. a b c
2. b e
3. d c a
4. e b c
Wobei ich eigentlich den Eintrag mit der
höchsten Trefferqoute brauchen würde also "e b c", aber die Anderen wo nur ein Suchbegriff drin vorkommt nicht vernachlässigen kann.
Hat irgendeiner von euch eine "einfache" Idee? Mir fallen nämlich im Moment nur Zwei ein, die etwas kompliziert sind.
Idee Nr. 1:
Das Ergebnis Array nochmal komplett durchsuchen und die Häufigkeiten der Wörter zu einer Zahl addieren und dann anhand dieser Zahl das Array sortieren.
(oder geht das vielleicht schon direkt mit Mysql?)
Idee Nr. 2:
Ähnlich wie eine Forensoftware (vbulletin macht das zum Beispiel)
einen Suchindex anlegen und dann
mit diesem Index die Ergebnisse suchen.
Naja vielleicht fällt euch ja dazu was ein bevor ich mich wieder an die Arbeit mache (ist ja bei dieser Hitze nicht zu ertragen, tagsüber zu arbeiten *g*)