I would have said that 'is' is a stopword, that is a common word that is not indexed by full text indexes (there would be too many, these words are not significant and would make the indexes VERY BIG). I still think 'is' is indeed one of such words, but moreover, guelphdad is right : a search cannot be performed on words shorter than 4 characters.
MySQL uses a very simple parser to split text into words. A ``word'' is any sequence of characters consisting of letters, digits, `'', or `_'. Some words are ignored in full-text searches:
* Any word that is too short is ignored. The default minimum length of words that will be found by full-text searches is four characters.
* Words in the stopword list are ignored. A stopword is a word such as ``the'' or ``some'' that is so common that it is considered to have zero semantic value. There is a built-in stopword list.
yse is was 2 short and I needed 4 characters minimum.
Now I am trying to search 2 columns at the same time, it is working fine with both columns separatly but as soon as i had the 2 i get an error message:
[MySQL][ODBC 3.51 Driver][mysqld-4.0.15-nt]Can't find FULLTEXT index matching the column list
/sgallery/shop/search_result.asp, line 11
Here is the SQl I am using:
SELECT * FROM tblproducts WHERE MATCH (prod_name,prod_desc) AGAINST ('keyword')
You are getting this error because you created your FULLTEXT index only on one column (prod_desc). If you want to search prod_name and prod_desc in one shot, you have to create a FULLTEXT index on (prod_name, prod_desc). According to the MySQL manual, you can use MATCH on any column included in a FULLTEXT index, which means that in your case, if you create just a FULLTEXT index on (prod_name, prod_desc), you will be able to use MATCH(prod_name, prod_desc), MATCH(prod_name) and MATCH(prod_desc).