Would you believe the word believe is causing strange query results?

The following clause returns zero results:

WHERE (MATCH (keyword) AGAINST (‘believe’ in boolean mode) or keyword in (“”))

This one, however, produces many rows:

WHERE (MATCH (keyword) AGAINST (‘’ in boolean mode) or keyword in (“believe”))

Does anyone have a good reason why? This is the only word that has ever given me problems. If I substitute the word lavender in both where clauses, I get many rows returned. There is just something weird going on with the word believe.

Thanks!

Give this a try:

  • (no operator)
    By default (when neither + nor - is specified) the word is optional, but the rows that contain it are rated higher. This mimics the behavior of MATCH() … AGAINST() without the IN BOOLEAN MODE modifier.

https://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html

I just read the webpage your provided, but I’m not sure what you mean by, “Give this a try”. As I stated in my original post, those two queries BOTH provide results if I just replace the word believe with lavender. So…I’m still confused as to what is going on.

Try adding the + symbol

The plus symbol was not needed when using the word lavender. Why does it need to be used when using the word believe?