PHP:在网页上搜索类似文本的搜索词

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (87)

我正忙着一个需要在网页上找到类似文字的程序。在SQL中,我们有400,000个搜索词。例如,搜索词可以是'San Miguel Pale Pilsen','Schaumburger Bali'和'Rizmajer Cortez'。

现在我正在检查数据库中网页上的每个单词。对于网页上的每个单词,我使用%like%运算符发送选择查询。对于每个结果,我使用类似的文本与PHP。如果单词和搜索词不等于其中的单词数量,它将获得一些额外的网页单词以使其相等。(是的,我知道它不聪明)问题是需要花费很多时间,服务器必须努力工作。

在网页上查找类似文字的最佳和最快方法是什么?

提问于
用户回答回答于

LIKE,如果你以一个模式运营商将总是慢%外卡。这是因为您否定了MariaDB使用任何索引的能力。

考虑到您需要在VARCHAR列的任何位置查找单词,最佳解决方案是实施真正的全文搜索。请参阅MariaDB的全文索引概述

搜索速度将提高几个数量级,更不用说可扩展性了。

扫码关注云+社区

领取腾讯云代金券