mysql - 两个全文索引的字段能否并在一起查询
问题描述
字段:title,article,都是全文索引。
查询关键词:key1,key2,key3。
SELECT * FROM [表名] WHERE MATCH(article) AGAINST(’key1,key2,key3’);针对一个全文检索的字段是可行的
有没有这种:
SELECT * FROM [表名] WHERE MATCH(title,article) AGAINST(’key1,key2,key3’);
即同时在title+abstract中查找key1,key2,key3。但错误提示:Can’t find FULLTEXT index matching the column list
有没有好办法?
问题解答
回答1:alter table aws_articles add fulltext(title,abstract);就ok了,建立联合索引,单独建立是不行的
回答2:MySQL哪个版本哟?全文搜索支持中文了吗?
回答3:如果是英文字段,如@haixia9060 说的,可新建索引后查询
对三个字段新建索引
ALTER TABLE articles ADD FULLTEXT content_title_keywords_ndx (content,title,keywords);
查询
match(content,title,keywords) against (’cats’ in boolean mode)
MySQL默认只能处理英文/数字类型的;
如果是是中文字段,应按流程(Document->Token->Term->Index)维护倒排索引;也有将MySQL字段指定Analyzer自动维护索引,实时同步到Solr中进行全文索引的做法;
相关文章:
1. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下2. 请问怎么改变超链接字体的颜色?3. docker-machine添加一个已有的docker主机问题4. java编程思想第4版中文版的几处谬误?5. java - 做数据库向手机端的推送要系统地学习哪些知识?求大神指点,谢谢!6. Mongodb web连接28017后,提示登录的用户名密码在 db那里预设置7. 为什么我ping不通我的docker容器呢???8. 在add.php中提交数据库已有的姓名,没有提示框9. mysql - 对单表大量数据进行报表汇总有什么高效的方法10. css3 - 大分辨率下,百度、UC、QQ等浏览器 css media queries 的写法
![dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下](http://www.haobala.com/attached/image/news/202311/1028095cc6.png)