因此,我有一个看似简单的查询:
SELECT i.*,
g.title AS groupname,
c.name AS category,
v.name AS author,
w.name as moderator,
u.name AS editor
FROM `jos_k2_items` as i
LEFT JOIN `jos_k2_categories` AS c ON c.id = i.catid
LEFT JOIN `jos_viewlevels` AS g ON g.id = i.access
LEFT JOIN `jos_users` AS u ON u.id = i.checked_out
LEFT JOIN `jos_users` AS v ON v.id = i.created_by
LEFT JOIN `jos_users` AS w ON w.id = i.modified_by
WHERE i.trash=0
AND MATCH( i.title ) AGAINST ('+red* +2*' IN BOOLEAN MODE)
ORDER BY i.id DESC由Joomla搜索在管理员界面中构建。我正在寻找一篇名为RED 2的文章,但它没有返回任何结果。下面是行的一个片段:
id title alias catid published ... trash
===============================================
800 RED 2 red-2 5 1 0表中有两个全文索引。第一个在title列上,第二个在title, introtext, fulltext, extra_fields_search, image_caption, image_credits, video_caption, video_credits, metadesc, metakey上。
我尝试过的一件事是重建索引,我使用了以下命令:
REPAIR TABLE `jos_k2_items` QUICK;发布于 2014-02-20 02:28:21
您试图匹配比默认的最小全文索引长度3短的单词。
第一次改变这个限制
ft_min_word_len = 3到2或1。
然后重新启动mysql,并重新构建表上的索引:
你可以这样做:
REPAIR TABLE my_table QUICK;https://stackoverflow.com/questions/21896626
复制相似问题