Hi!

On Sep 11, Andrea Gangini wrote:
> I need help understanding how Mysql processes the & simbol (ampersand) in
> full text search; I've a text field in a table with this data:
> 
> kw
> kw&z
> kw&zw
> at&t
> 
> Of course I've instructed mysql to index words of 2 chars or greater; here's
> my findings:
> 
> - MATCH (mycolumn) AGAINST (  'kw' IN BOOLEAN MODE  ) returns kw, kw&z,
> kw&zw
> - MATCH (mycolumn) AGAINST (  '"kw"' IN BOOLEAN MODE  ) (note the double
> quotes) returns kw, kw&z, kw&zw... seems somewhat strange, since I asked for
> an exact phrase match;
> - MATCH (mycolumn) AGAINST (  'at&t' IN BOOLEAN MODE  ) returns nothing.
> 
> I think that the words with the & symbol are splitted while indexing; that
> explains why "AT&T" is never found (AT is a stopword and T is less than 2
> character).

That's correct.

> Is it possible to instruct mysql to treat words with & like they were only
> one token?

Unfortunately for now - only by recompiling :(
See ft_parser.c file, misc_word_char macro.

Regards,
Sergei

-- 
   __  ___     ___ ____  __
  /  |/  /_ __/ __/ __ \/ /   Sergei Golubchik <[EMAIL PROTECTED]>
 / /|_/ / // /\ \/ /_/ / /__  MySQL AB, Senior Software Developer
/_/  /_/\_, /___/\___\_\___/  Osnabrueck, Germany
       <___/  www.mysql.com

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

Reply via email to