社区
MS-SQL Server
帖子详情
为什么索引会失效?
hushuowang
2004-08-25 04:41:31
最近碰到一个很奇怪的问题。我在一个字段上建立了索引搜索的时候速度很快但是不知道为什么运行一段时间后有<12个月后速度就变得很慢很慢一直把数据库超时。把该索引删除掉重新建立索引速度快起来了!真的搞不清楚这是怎么回事!是不是索引也会失效还是什么原因?求救高手了!
...全文
497
3
打赏
收藏
为什么索引会失效?
最近碰到一个很奇怪的问题。我在一个字段上建立了索引搜索的时候速度很快但是不知道为什么运行一段时间后有<12个月后速度就变得很慢很慢一直把数据库超时。把该索引删除掉重新建立索引速度快起来了!真的搞不清楚这是怎么回事!是不是索引也会失效还是什么原因?求救高手了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
netcoder
2004-08-25
打赏
举报
回复
随着应用系统的运行,数据不断地发生变化,当数据变化达到某一个程度时将会影响到索引的使用。,这时需要用户自己来维护索引。一种方法是删除老的索引,重新建新的索引。另外一种方法是保持索引统计有效(使用命令update statistics),在以下情况下需要重新索引。
使用数据模式发生了较大变化。
某段时间内有极大量的数据插入。
SQL Server排序改变。
dbcc发现索引错误。
zjcxc
元老
2004-08-25
打赏
举报
回复
应该是索引碎片引起了(和磁盘碎片差不多),可以用下面的语句整理:
DBCC INDEXDEFRAG (库名, 表名, 索引名)
hisi
2004-08-25
打赏
举报
回复
这是正常现像
MySQL
索引
不使用
索引
,MySQL 就
会
从第1条记录开始读完整个表,直至找出相关的行。表越大,查询数据所花费的时间越多。如果表中查询的列有一个
索引
,MySQL能快速到达某个位置去搜索数据文件,而不必查看所有数据。 # ...
哪些情况下
索引
会
失效
?
索引
并不是时时都
会
生效的,比如以下几种情况,将导致
索引
失效
: 如果条件中有or,即使其中有条件带
索引
也不
会
使用(这也是为什么尽量少用or的原因) 注意:要想使用or,又想让
索引
生效,只能将or条件中的每个列都加上
索引
2.对于多列
索引
,不是使用的第一部分,则不
会
使用
索引
3.like查询是以%开头 4.如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用
索引
5.如果mysql估计使用全表扫描要比使用
索引
快,则不使用
索引
此外,查
【详解】面试必问:MySQL
索引
为什么
会
失效
?最左匹配原则中间有间隙,为什么
索引
不
会
被命中?%开头
索引
为什么
失效
?范围查询
索引
为什么
会
失效
?
首先看看
索引
的基本操作、
索引
的底层原理,先看这2篇文章: 【详解】MySQL
索引
的基本操作,
索引
(主键
索引
,普通
索引
,组合
索引
,唯一
索引
)_CodingLJ-CSDN博客【详解】面试必问:MySQL
索引
底层原理(基于B+Tree)_CodingLJ-CSDN博客 1、基础知识 知识补充: 多路搜索树是有序的,这个是数据结构中树的部分内容。以二叉搜索树为例,说下搜索树的特点,根节点的值始终大于左孩子的值,根结点的值始终小于右孩子结点的值;当然左右孩子也有这样的规律。 ...
什么情况下MySQL
索引
会
失效
?
当or左右查询字段只有一个是
索引
,该
索引
失效
,只有当or左右查询字段均为
索引
时,才
会
生效。(3)如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用
索引
。or语句前后没有同时使用
索引
,如下图:user_code没有加
索引
,此时
索引
失效
。LIKE 查询,以%开头,
索引
失效
;(7)当全表扫描速度比
索引
速度快时,mysql
会
使用全表扫描,此时
索引
失效
。(5)在
索引
字段上使用“not”,“”,“!在
索引
列上使用“IS NOT NULL”,
索引
失效
。在
索引
字段上使用“not”,“”,“!
聊聊
索引
失效
?
失效
的原因是什么?
大家好,我是小林。 在工作中,如果我们想提高一条语句查询速度,通常都
会
想对字段建立
索引
。 但是
索引
并不是万能的。建立了
索引
,并不意味着任何查询语句都能走
索引
扫描。 稍不注意,可能你写的查询语句是
会
导致
索引
失效
,从而走了全表扫描,虽然查询的结果没问题,但是查询的性能大大降低。 今天就来跟大家盘一盘,常见的 6 种
会
发生
索引
失效
的场景。 不仅
会
用实验案例给大家说明,也
会
清楚每个
索引
失效
的原因。 发车!
索引
存储结构长什么样? 我们先来看看
索引
存储结构长什么样?因为只有知道
索引
的存储结构,才能更好的理解
索引
失效
MS-SQL Server
34,590
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章