I have hit a snag in setting up a Boolean search; my query is returning 0
results when there are definitely five matches in my table.

My query is set up as follows:

SELECT * FROM resources WHERE MATCH (organization_name, description) AGAINST
('keep' IN BOOLEAN MODE);

'Keep' is a word that shows up 3 times in the organization_name field and 2
times in the description field in my table. There are 122 rows in the table,
so this 0 result is clearly not because of the 50% threshold (which I think
doesn't apply to Boolean searches anyway?)

Other background information: I have set organization_name and description
as the fulltext index, organization_name is a VAR CHAR field of 100,
description is a TEXT field, all of the organization_name entries are
minimum of 3 words, and description entries are a minimum of about 100
words.

If I make it a basic search like this:

SELECT * FROM resources WHERE organization_name LIKE "%keep%" OR description
LIKE "%keep%";

Then I get the correct results back. If I set it as a fulltext search (not
boolean) I get "0" results back. If I add an * into my Boolean search
(AGAINST ('keep*' IN BOOLEAN MODE);) I get 1 result (and not the 5 I should
be getting).

Is my first query written wrong? What am I missing here?

Thanks in advance for your help.

Alisa


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to