相关疑难解决方法(0)

如何找到相似的结果并按相似性排序?

如何查询按相似性排序的记录?

例如.搜索"股票溢出"将返回

  1. 堆栈溢出
  2. SharePoint溢出
  3. 数学溢出
  4. 政治溢出
  5. VFX溢出

例如.搜索"LO"将返回:

  1. 巴勃罗毕加索
  2. 米开朗基罗
  3. 杰克逊pollock

我需要帮助的是:

  1. 使用搜索引擎索引和搜索MySQL表,以获得更好的结果

    • 使用Sphinx搜索引擎,使用PHP

    • 使用带有PHP 的Lucene引擎

  2. 使用全文索引,查找类似/包含的字符串


什么不好用

  • Levenshtein距离非常不稳定.(UDF,查询)
    搜索"狗"给了我:
    1. 沼泽
    2. 回声
  • LIKE 返回更好的结果,但对于长查询不返回任何内容,尽管存在类似的字符串
    1. dogid
    2. dogaral
    3. 教条

mysql sql sorting string similarity

67
推荐指数
2
解决办法
7万
查看次数

什么是全文索引,何时应该使用它?

正如标题所述,什么是全文索引以及何时应该使用它?

mysql

34
推荐指数
2
解决办法
3万
查看次数

Optimization of MySQL search using "like" and wildcards

How can queries like

SELECT * FROM sometable WHERE somefield LIKE '%value%'
Run Code Online (Sandbox Code Playgroud)

be optimized?

The main issue here is the first wildcard which prevents DBMS from using index.

Edit: What is more, somefield value is solid string (not a piece of text) so fulltext search could not be performed.

mysql optimization wildcard

15
推荐指数
3
解决办法
1万
查看次数

MySQL全文搜索中的通配符搜索

如何使用全文搜索在MySQL中查询,以便我们可以获得如下的结果:

nited变得团结起来,而oogle得到谷歌


我们可以使用LIKE运算符: %nited and %oogle

mysql full-text-search wildcard

9
推荐指数
1
解决办法
1万
查看次数