From the manual <http://dev.mysql.com/doc/mysql/en/Fulltext_Search.html>:
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...
. and - are non-word characters, so they are treated as word separators. Hence, your query is asking for documents containing 'BT', '1034', and '06'. The first and last are too short, so they are dropped, resulting in a search for just '1034'. Documents are indexed similarly, so each of the examples you give are indexed as '1034' only; the parts before and after are too short and not indexed. So you get the results you indicate.
When you add the quotes, results which match '1034' are then filtered for matches containing the exact text in quotes, "BT-1034.06" in this case, yielding the result you want.
Michael
leegold wrote:
If I search on: BT-1034.06 I get returned: BT-1034.02 BT-1034.03 BT-1034.05 ... BT-1034.11
If I put in "" ie. "BT-1034.06" I only get BT-1034.06 returned. The BT- part seems irrelevant.
But I don't understand the results. Why so many returned? Seems like 1034.06 w/out the "" is unique enough. Is '.' a special character and the cause? If no simple answer I'll show you my code if necessary. Thanks for the help. 4.1.3a-beta for win32 Lee G.
-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]