news 2026/6/20 11:35:52

<span class=“js_title_inner“>简单聊聊在SQL Server 中索引对like语句到底有没有帮助</span>

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
<span class=“js_title_inner“>简单聊聊在SQL Server 中索引对like语句到底有没有帮助</span>

最近在某个技术微信群中看到几个人在争论「“SQL Server 中的索引对like到底有没有帮助”」的问题,很多开发人员对于这个问题的回答基本上就是:没有。也有部分开发人员认为有帮助。那么到底有没有帮助呢,对于这个问题我也不确定,于是我查询了相关文档,以及亲自动手做了实验,得出了如下结论。

  1. 「后缀通配符」用后缀通配符来查询数据,索引是有帮助的,因为通配符(%)位于末尾,例如:

    SELECT * FROM Users WHERE Name LIKE 'Ja%'

    SQL Server 可以使用索引查找以 "Ja"开头的记录

  2. 「前缀通配符」由于通配符位于开头,因此该查询无法有效利用索引,例如:

    SELECT * FROM Users WHERE Name LIKE '%ck';

    这时 SQL Server 必须扫描所有记录,才能找到以 "ck"结尾的用户。

  3. 「Infix 通配符」这种通配符查询方式,索引只会对部分查询起作用,具体取决于数据库引擎的优化,例如:

    SELECT * FROM Users WHERE Name LIKE 'J%k';

    SQL Server 首先使用索引查找以 "J"开头的记录,然后扫描这些记录查找末尾是 "k"的记录。

  4. 「无通配符」无通配符就像相当于相等检查,因此索引对这种查询方式是完全有帮助的,例如:

    SELECT * FROM Users WHERE Name LIKE 'Jack'; -- 等价于 SELECT * FROM Users WHERE Name ='Jack';

综上所述,在SQL Server中,索引对like 语句是有帮助的,但有效性取决于like的构造方式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 14:22:36

例说FPGA:可直接用于工程项目的第一手经验【2.4】

第10章 工程实例8——电子点菜单设计 本章导读 本章的工程实例至少结合了第4、6、8、9章的内容,集成实现了一个“电子点菜单”的雏形,虽然还不能称得上真正意义上的“点菜单”,但是已经非常接近实际产品了,相信在聪明的读者手中这个雏形很快就能摆上“大雅之堂”。话说回…

作者头像 李华
网站建设 2026/6/19 21:50:53

2026-02-03 全国各地响应最快的 BT Tracker 服务器(电信版)

数据来源:https://bt.me88.top 序号Tracker 服务器地域网络响应(毫秒)1http://180.112.57.159:6969/announce江苏苏州电信72http://60.249.37.20:6969/announce广东东莞电信343http://211.75.205.188:6969/announce广东广州电信364udp://132.226.6.145:6969/announ…

作者头像 李华
网站建设 2026/6/20 5:55:14

上海计算机学会2月月赛丙组T3配对乘积题解

题解&#xff1a;查看数据范围发现&#xff0c;数据不是很大&#xff0c;所以采用二层循环来遍历每个数组进行交叉相乘的方式进行比较。找到最大值。乘积结果使用long long类型存储。代码如下&#xff1a;#include<iostream> using namespace std; int main(){long long …

作者头像 李华
网站建设 2026/6/15 15:01:35

<span class=“js_title_inner“>美国 TikTok 崩了!</span>

美国 TikTok 的全新运营方就本周末出现的服务故障发布了官方说明&#xff0c;同时表态正全力推进服务恢复工作。据 TikTok 方面披露&#xff0c;美国区域的服务从周日凌晨起出现持续性中断&#xff0c;背后诱因是电力供应故障。TikTok USDS 也正式发布声明称&#xff1a;“受美…

作者头像 李华
网站建设 2026/6/15 7:05:21

STM32L475定时器实验

配置定时器TIM2 配置项解释: Slave Mode: 正常情况下, TIM2的启动通过代码 HAL_TIM_Base_Start() 来控制, 但是开启Slave Mode之后, TIM2的核心操作将由外部信号触发, 如另一个定时器, GPIO电平等等, 外部触发源通过Trigger Source 来配置 Prescaler(PSC - 16 bits value) 通过…

作者头像 李华