semtex Posted May 17, 2006 Share Posted May 17, 2006 I have this query to do a fulltext search in MySQL, which works fine:$sql = "SELECT ID, title , MATCH(title, text) AGAINST ('" . $keywords . "' IN BOOLEAN MODE) AS score FROM reviews WHERE MATCH(title, text) AGAINST ('" . $keywords . "' IN BOOLEAN MODE) ORDER BY score DESC";Now I need to do the same, but it should not return rows that have these same keywords in the field "person".So basically it has to return all the rows that have the keywords in the fields "title" or "text", but exclude the rows where the keywords are in the field "person" (as well).Can this be done in one query? Quote Link to comment Share on other sites More sharing options...
shoz Posted May 18, 2006 Share Posted May 18, 2006 You can try the following[code]WHEREMATCH(title, text)AGAINST ('" . $keywords . "' IN BOOLEAN MODE)AND NOTMATCH(person)AGAINST ('" . $keywords . "' IN BOOLEAN MODE)ORDER BY score DESC";[/code] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.