Greblak Skrevet 31. august 2008 Del Skrevet 31. august 2008 Jeg har slitt en liten stund med et query som bare ikke vil fungere! Tanken er å returnere rader hvor søkeordene treffer på feltene "companyname" og "tags" i tabellen "business". Sortert etter relevans. SELECT *, MATCH (companyname, tags) AGAINST (\''.$_GET['search'].'\') as relev FROM `business` ORDER BY relev DESC $_GET['search'] er selvsagt validert på forhånd Har også prøvd uten *, bare for å lese verdiene. Problemet er at alle relevansene viser 0 uansett hva! Har prøvd å sette SQLen rett inn i phpmyadmin med diverse testsøk som jeg VET skal treffe. Har lagt til masse data i radene. Er nå på 55 rader bare for å sørge for at jeg ikke har for lite data å søke i. Jeg har en fungerende LIKE query men denne er det jo umulig å kjøre en relevanssammenligning på. Eller? Lenke til kommentar
mathias123 Skrevet 14. september 2008 Del Skrevet 14. september 2008 Lenge siden jeg prøvde dette, men jeg tror MATCH må gjøres to ganger: "SELECT *, MATCH (companyname, tags) AGAINST ($string) AS relevance FROM business WHERE MATCH (companyname, tags) AGAINST ($string) ORDER BY relevance DESC; Så vidt jeg kan skjønne på mysql-manualen blir resultatet automagisk sortert etter relevance, så ORDER BY er kanskje ikke nødvendig. Men prøv begge deler. Lenke til kommentar
Greblak Skrevet 21. september 2008 Forfatter Del Skrevet 21. september 2008 Fikk løst det, hadde helt glemt denne tråden. Var noe galt med tabellen og queryet hehe. Takker Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå