Mailinglisten-Archive |
On 14-Aug-2001 Jörg Schwalenberg wrote: >> > >> >gibt es in Mysql die Möglichkeit, die Anzahl von Übereinstimmungen in > einer >> >Column über ein SQL Statement zu counten und dadurch eine Relevance der >> >Suche, mit einer Sortierung über diese Relevance, zu realisieren ? >> > >> >Wäre toll, wenn Ihr dafür eine Lösung hättet. >> >> Geht es vielleicht hiermit ? >> ----- >> query = "select count(id) as anzRow from tabelle where blabla='blubb'"; >> $result = _(at)_mysql_query($query); >> $rows = _(at)_mysql_result($result,0,"anzRow"); >> ----- > Halo Michael, > > damit erhalte ich die Anzahl an übereinstimmenden Rows der Column. > Was mich interessiert, wäre die Anzahl an Matches im jeweiligen DS. > Wenn ich z.B: nach "text" suche und in dem DS dieses Wort vier mal vorkommt, > so möchte ich diesen Wert "4" erhalten um ihn danach über Order by zu > sortieren. So wie du es haben willst gehts sicherlich nicht, zumindest nicht automatisch. Es gibt zwei Fälle: Entweder hast du mehrere Spalten, in denen "text" drinstehen kann, oder ein Feld, in denen es mehrmals vorkommen kann (dann suchst du aber mit like nach "%text%"). Erster Fall: Kannst du vergessen, du musst nämlich immer explizit hinschreiben, in welcher Spalte gesucht werden soll. Wenn du jetzt dein Statement entsprechend formulierst, alle Kombinationen bei denen "text" n mal vorkommt entsprechend oder verknüpfst, dann hast du das ganze fü r ein n. Alles für alle n gemacht, und du hast was du willst. Zweiter Fall: Suche nach "%text%": hier steht % als wildcard für beliebige Zeichen, MySQL sieht also nach, _ob_ "text" irgendwo in dem Suchfeld steht, aber nicht wie oft. Hier ist gar keine Lösung möglich, aber: ich verweise mal auf den Fulltext-Index, und alles was damit zusammenhängt, und evtl. kannst du dein Problem auch mit ner Stichwort-Tabelle in den Griff bekommen Michael -- Michael Bergbauer <michael_(at)_noname.franke.de> Use your idle CPU cycles. See http://www.distributed.net and win $ 1 000. Visit our mud Geas at geas.franken.de Port 3333 --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive