0
我在MySQL中擁有超過5000萬行的表。貝婁是表結構:MySQL表性能
CREATE TABLE `links` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`loc` text NOT NULL,
`lastmod` datetime NOT NULL,
`changefreq` varchar(15) NOT NULL,
`priority` float NOT NULL,
`isdownloaded` tinyint(1) NOT NULL,
`mainrepoid` bigint(20) NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `locfulltext` (`loc`)
) ENGINE=MyISAM AUTO_INCREMENT=11426345 DEFAULT CHARSET=latin1
全文被現場祿啓用。我需要獲取所有包含名稱的行和詳細信息單詞。下面的查詢沒有返回預期的結果:
SELECT *
FROM links
WHERE
MATCH (
loc
)
AGAINST (
'name +details' IN BOOLEAN MODE
)
,所以我不得不使用下面的查詢:
SELECT id, loc
FROM links
WHERE
loc like '%name%' and
loc like '%details%'
有沒有更好的選擇?