我是靠谱客的博主 如意季节,最近开发中收集的这篇文章主要介绍mysql sql多个like性能_mysql – 提高SQL LIKE查询性能,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我们有一个包含产品信息的大表.几乎所有时间我们都需要查找包含特定单词的产品名称,但不幸的是这些查询需要永远运行.

示例:查找名称中包含“钢铁”和“102”字样的所有产品(不一定要彼此相邻,因此像“Ninja钢铁102 x”这样的产品是匹配的,就像“龙钢102 b”是吗).

目前我们这样做:

SELECT列FROM产品WHERE名称LIKE’%WORD1%’和名称LIKE’%WORD2%'(相似单词的数量通常为2-4,但理论上可以是7-8或更多).

有更快的方法吗?

我们只是匹配单词,所以我想知道这是否可以帮助某种程度(即上面例子中的产品是匹配,但“Samurai swordsteel 102 v”不匹配,因为“钢铁”并不孤立).

我自己的想法是使用productnames中的单词创建一个帮助表,然后使用该表来获取匹配产品的ID.

即一个像[id,word,productid]这样的表,所以我们得到例如:

1, samurai, 3

2, swordsteel, 3

3, 102, 3

4, v, 3

只是想知道在MySQL中是否有内置的方法来做这个,所以我不必实现自己的东西维护两个表.

谢谢!

最后

以上就是如意季节为你收集整理的mysql sql多个like性能_mysql – 提高SQL LIKE查询性能的全部内容,希望文章能够帮你解决mysql sql多个like性能_mysql – 提高SQL LIKE查询性能所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部