SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。 对于英文,MySQL的FULLTEXT属性来实现全文检索是相当方便且高效的,但是在使用过程中需要注意一些事项MySQL的FULLTEXT实现全文检索的注意事项你知道多少吗,其实这个东西小编测试过不支持中文了,不过既然用了还是有一些事项要注意了。 首先对我们对需要进行检索的字段添加FULLTEXT属性(假设已经建表): alter table table_name add fulltext index(filed_1,filed_2); 接下来查询数据: SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST ('keyword'); 此处涉及到一个很重要的注意事项: MySQL规定全文搜索中被搜索的单词所在的行数大于等于被搜索的所有行数的一半时候,就将被搜索单词作为Common word,即不被显示。(具体条件需要查阅资料确定) 因此,假设在测试的时候,表中只有一行数据,所以无论怎么执行上述查询语句,返回的结果总是为空。不必惊慌,多加几条没有待查关键词的数据就会有结果啦~ 当然,MySQL提供了更加强大的查询结果过滤: SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST (' keyword_1 -keyword_2' IN BOOLEAN MODE); 这样,就会返回包含keyword_1的数据,而包含keyword_2的数据就会被过滤掉。 相关推荐: mysql 全文检索中文解决方法及实例代码分享 PHP+MYSQL实现全文检索及全文检索工具 SQL Server全文检索简介_PHP教程 以上就是关于MySQL的FULLTEXT实现全文检索需要注意的事项的详细内容,更多请关注php中文网其它相关文章!
学习教程快速掌握从入门到精通的SQL知识。
|