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

SQL中的最佳LIKE搜索

发布时间:2020-12-12 06:55:21 所属栏目:MsSql教程 来源:网络整理
导读:我有一个零件数据库,我将不断查询报价系统.零件数据库中有1,400,000条记录.用户只是开始键入部件号,他们希望系统只能在几个字符后才能找到,所以我需要能够进行通配符搜索,例如: SELECT NeededFields FROM Parts WHERE PartNumber LIKE 'ML%' 我是否可以执行
我有一个零件数据库,我将不断查询报价系统.零件数据库中有1,400,000条记录.用户只是开始键入部件号,他们希望系统只能在几个字符后才能找到,所以我需要能够进行通配符搜索,例如:
SELECT NeededFields FROM Parts WHERE PartNumber LIKE 'ML%'

我是否可以执行任何类型的优化以尝试从这种类型的查询中获得最大的性能?我将PartNumber字段编入索引,但我不确定这是否是我能得到的最好的.我愿意考虑与SQL索引分开的数据库中内置的备用索引结构.主键是Guid,但我需要这个用于复制,因为我使用的是特定的数据结构.

解决方法

我猜你的主键(GUID)可能有一个聚簇索引.您可能需要考虑使主键不被群集.相反,您可以聚集为PartNumber创建的索引. (每个表只能有一个聚簇索引)

您还应该考虑向查询添加TOP谓词,以便只返回前100行(或左右)行.我在想…如果用户第一次输入M,可能会有几十万次匹配,加载速度很慢.通过限制行数,您应该获得更好的性能.

(编辑:李大同)

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

    推荐文章
      热点阅读