<[EMAIL PROTECTED]> said: > 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.
Thanks for the explanation. BT-1034.02 is one of many primary keys. I suppose Fulltext is a natural language search and not the tool to use when searching for specific primary keys. I could regex user search input and if I see anything between a '-' or '.' that's less than 4 chars I could "" the whole string(?) Wonder what google or yahoo do? Is there a way around this? Why is it the default? Lee > > 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]