Louie,

Mysql treats the dash as a word separator. There's no way to change
that unless you change the source code and recompile Mysql.

Also, the default min word length is 4. So not only is "E" not
matched; even "018" will not be matched. The min word length is easily
configurable, though. Put a .cnf file in the conf dir of your
installation, and have the line:

ft_min_word_len=3

and restart your mysql server. If "018" is not a common word in your
index, then it will show up as a match.

-linda


On Wed, 20 Oct 2004 08:17:06 +0100, Chris Elsworth <[EMAIL PROTECTED]> wrote:
> On Mon, Oct 18, 2004 at 11:19:55AM +0800, Louie Miranda wrote:
> >
> > mysql> select * from fullsearch where match (title,body) against ('018-E');
> > Empty set (0.00 sec)
> >
> >
> > it returns an empty set, is it possible to also search with "-" dash? chars?
> 
> If I remember correctly, you need to pass the string as a phrase to fulltext:
> 
> select * from fullsearch where match (title,body) against ('"018-E"');
> 
> I'd prefer being able to escape the - with \, since using a phrase has
> other disadvantages (like partial word matching goes out the window),
> but you can't.
> 
> --
> Chris
> 
> 
> 
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
> 
>

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

Reply via email to