2015-09-15 21 views
0

我知道这是一个很宽泛的问题,但严重..我真的想不出找到并回答对于这一点,只有LIKE关键字来检查,如果它包含它..从搜索框中获取内容发现它在数据库

我想要在数据库中查找某些数据,如果它包含数据,从数据库开始,或者以数据库结尾,按照最普遍的结果排序?

我在引导一个搜索框,当内容发生变化时,一个Ajax请求被发送了新的内容..

它有没有办法做到这一点。

+0

'在一个分贝,如果它包含它... ...将任何地方,任何表,任何列,但认真 – Drew

回答

0

使用LIKE不算什么。在mysql中使用全文搜索。有缺点:myisam只需要char/varchar/text字段。在这里看到更多的信息: https://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html

一个伟大的方法是使用一个真正的搜索引擎,如Elasticsearch,建在Apache Lucene的顶部:快速,相关的,灵活的,适应性强,可与JSON API。在这里看到更多的信息:https://www.elastic.co/products/elasticsearch

+0

InnoDB支持5.6+的FULLTEXT搜索:https://dev.mysql .com/doc/refman/5.6/en/innodb-fulltext-index.html – binnyb

+0

我也会避开像瘟疫一样的全文搜索。它出于市场营销的原因,并为温顺。 – Drew

相关问题