Hi, 

I don't know if you have already an answer to you problem but.. 
There is an explanation to this "bisarre" result:

---------------------------------

+----+-------------------+---------------------------------------------+
| id | title                        | body                             |
+----+-------------------+---------------------------------------------+
|  1 | MySQL Tutorial               | DBMS stands for DataBase Manag   |
|  2 | How To Use MySQL Efficiently | After you went through a ...     |
|  3 | Optimising MySQL             | In this tutorial we will show .. |
|  4 | 1001 MySQL Trick             | Never run mysqld as root.        |
|  5 | MySQL vs. YourSQL            | In this database comparison we.. |
+----+-------------------+---------------------------------------------+

Every correct word in the collection and in the query is weighted,
according to its significance in the query or collection. This way, a
word that is present in many documents will have lower weight (and may
even have a zero weight), because it has lower semantic value in this
particular collection. Otherwise, if the word is rare, it will receive a
higher weight. The weights of the words are then combined to compute the
relevance of the row.

Such a technique works best with large collections (in fact, it was
carefully tuned this way). For very small tables, word distribution does
not reflect adequately their semantical value, and this model may
sometimes produce bisarre results.

mysql> SELECT * FROM articles WHERE MATCH (title,body) AGAINST
('MySQL');
Empty set (0.00 sec)

Search for the word MySQL produces no results in the above example. Word
MySQL is present in more than half of rows, and as such, is effectively
treated as a stopword (that is, with semantical value zero). It is,
really, the desired behavior - a natural language query should not
return every second row in 1GB table.
---------------------------------------------

This was taken from:
http://mysql.com/doc/F/u/Fulltext_Search.html


On Thu, 2002-01-24 at 08:59, Victor Hugo Reus Valiente wrote:
> Hi there.
> 
> Im having some troubles with mysql and FULLTEXT.
> I create one table like this:
> create table pets (id INT AUTO_INCREMENT NOT NULL PRIMARY KEY);
> alter table pets add name TEXT;
> alter table pets add kind TEXT;
> alter table pets add FULLTEXT name (name);
> alter table pets add FULLTEXT kind (kind);
> 
> Now, I have the next rows:
> ID          NAME         KIND
> 1            Boby           Asiatic and colored
> 2            Linda           American, non fustable
> 3            Boby           Spanish, colored and kindly
> 
> ... etc
> 
> When I do
> Select * from pets where MATCH (name) against ('boby');
> 
> I´ts giving me 0 results as response...
> 
> Whereis the problem, I have, boby twice and it return me 0 as result.
> ¿What I doing wrong?
> 
> Thanks to everibody.
> Victor Reus.
> 
> 
> ---------------------------------------------------------------------
> Before posting, please check:
>    http://www.mysql.com/manual.php   (the manual)
>    http://lists.mysql.com/           (the list archive)
> 
> To request this thread, e-mail <[EMAIL PROTECTED]>
> To unsubscribe, e-mail <[EMAIL PROTECTED]>
> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
> 
-- 
Diana Soares
Websolut - Soluções Internet
Email: [EMAIL PROTECTED]


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to