Re: FULLTEXT and LIKE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



may be the best solution is combination of A) and B)
check the length of the phrase if it is <=3 use B) (it will be damn slow if you have great number of rows in 'news' table and/or 'content' is big most of the times)
if it is > 3 use A)



B.R. Ognyan


Monty wrote:

Hi,

My head is swimming with lots of info gleaned from various newsgroups about
using fulltext indexes in MySQL, but, I'm still not sure what the best
solution would be for what I want to do. I'm concerned about the 3-char
minimum and not being able to search on partial words (my version of MySQL
doesn't support boolean fulltext searches).

I have a simple News table that is structured like this:

CREATE TABLE `news` (
  `id` int(7) unsigned NOT NULL auto_increment,
  `author` varchar(50) NOT NULL default '',
  `headline` varchar(60) NOT NULL default '',
  `content` text NOT NULL,
  `url` text NOT NULL,
  UNIQUE KEY `id` (`id`),
) TYPE=MyISAM;

I want searches for News to be on the author, headline and content fields.
What is the best way to index and search this?

A) Create a combined fulltext index: FULLTEXT (author,headline,content) --
and do searches using MATCH() and AGAINST().

B) Create a fulltext index only for the content field and use this kind of
select: SELECT * FROM db WHERE author LIKE "%phrase%" OR headline LIKE
"%phrase%" OR MATCH(content) AGAINST(phrase);

C) None of the above ... is there a better way?

Thanks a lot for any input or feedback! I'm completely lost!

Monty

-- Ognyan Bankov ogre_bank@xxxxxxxxx metatotem.com

--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux