加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

如何优化/重构TSQL“LIKE”子句?

发布时间:2020-12-12 08:42:38 所属栏目:MsSql教程 来源:网络整理
导读:我有一个117000左右的记录表.我需要执行搜索,检查给定字符串模式的3个单独的字段. 我的where子句如下: field1 LIKE '%' + @DESC + '%'OR field2 LIKE '%' + @DESC + '%'OR field3 LIKE '%' + @DESC + '%' 这似乎需要大约24秒,无论输入… 有没有更好的方法来
我有一个117000左右的记录表.我需要执行搜索,检查给定字符串模式的3个单独的字段.

我的where子句如下:

field1 LIKE '%' + @DESC + '%'
OR field2 LIKE '%' + @DESC + '%'
OR field3 LIKE '%' + @DESC + '%'

这似乎需要大约24秒,无论输入…

有没有更好的方法来做到这一点?少于10(或5!)秒将更加优选.

感谢任何帮助.

解决方法

使用全文检索和 CONTAINS.当在字段中间搜索时,不能优化LIKE,即.当LIKE表达式以“%”开头时,它将始终执行全表扫描.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读