位置: 编程技术 - 正文

SQL Server 索引结构及其使用(二) 改善SQL语句第1/3页(sql server索引怎么用)

编辑:rootadmin
比如: select * from table1 where name=''zhangsan'' and tID > 和执行: select * from table1 where tID > and name=''zhangsan''    一些人不知道以上两条语句的执行效率是否一样,因为如果简单的从语句先后上看,这两个语句的确是不一样,如果tID是一个聚合索引,那么后一句仅仅从表的条以后的记录中查找就行了;而前一句则要先从全表中查找看有几个name=''zhangsan''的,而后再根据限制条件条件tID>来提出查询结果。   事实上,这样的担心是不必要的。SQL SERVER中有一个“查询分析优化器”,它可以计算出where子句中的搜索条件并确定哪个索引能缩小表扫描的搜索空间,也就是说,它能实现自动优化。   虽然查询优化器可以根据where子句自动的进行查询优化,但大家仍然有必要了解一下“查询优化器”的工作原理,如非这样,有时查询优化器就会不按照您的本意进行快速查询。   在查询分析阶段,查询优化器查看查询的每个阶段并决定限制需要扫描的数据量是否有用。如果一个阶段可以被用作一个扫描参数(SARG),那么就称之为可优化的,并且可以利用索引快速获得所需数据。   SARG的定义:用于限制搜索的一个操作,因为它通常是指一个特定的匹配,一个值得范围内的匹配或者两个以上条件的AND连接。形式如下: 列名 操作符 <常数 或 变量> 或 <常数 或 变量> 操作符列名 列名可以出现在操作符的一边,而常数或变量出现在操作符的另一边。如: Name='张三' 价格> <价格 Name='张三' and 价格>   如果一个表达式不能满足SARG的形式,那它就无法限制搜索的范围了,也就是SQL SERVER必须对每一行都判断它是否满足WHERE子句中的所有条件。所以一个索引对于不满足SARG形式的表达式来说是无用的。   介绍完SARG后,我们来总结一下使用SARG以及在实践中遇到的和某些资料上结论不同的经验: 1、Like语句是否属于SARG取决于所使用的通配符的类型 如:name like ‘张%' ,这就属于SARG 而:name like ‘%张' ,就不属于SARG。 原因是通配符%在字符串的开通使得索引无法使用。 2、or 会引起全表扫描   Name='张三' and 价格> 符号SARG,而:Name='张三' or 价格> 则不符合SARG。使用or会引起全表扫描。 3、非操作符、函数引起的不满足SARG形式的语句   不满足SARG形式的语句最典型的情况就是包括非操作符的语句,如:NOT、!=、<>、!<、!>、NOT EXISTS、NOT IN、NOT LIKE等,另外还有函数。下面就是几个不满足SARG形式的例子: ABS(价格)< Name like ‘%三' 有些表达式,如: WHERE 价格*2> SQL SERVER也会认为是SARG,SQL SERVER会将此式转化为: WHERE 价格>/2 但我们不推荐这样使用,因为有时SQL SERVER不能保证这种转化与原始表达式是完全等价的。 4、IN 的作用相当与OR 语句: Select * from table1 where tid in (2,3) 和 Select * from table1 where tid=2 or tid=3 是一样的,都会引起全表扫描,如果tid上有索引,其索引也会失效。

推荐整理分享SQL Server 索引结构及其使用(二) 改善SQL语句第1/3页(sql server索引怎么用),希望有所帮助,仅作参考,欢迎阅读内容。

SQL Server 索引结构及其使用(二) 改善SQL语句第1/3页(sql server索引怎么用)

文章相关热门搜索词:sql server索引的作用,sql server索引的使用,sql server中索引类型包括哪些,sql server中索引类型包括哪些,sql server中索引类型包括哪些,sqlserver索引数据结构,sqlserver索引数据结构,sqlserver索引数据结构,内容如对您有帮助,希望把文章链接给更多的朋友!

获取MSSQL数据字典的SQL语句 CREATEVIEWdbo.vw_db_dictionaryASSELECTTOPPERCENTdbo.sysobjects.nameAStable_name,dbo.sysproperties.[value]AStable_desc,dbo.syscolumns.nameASfield,properties.[value]ASfield_desc,dbo.systypes.nameASfi

Microsoft Search 服务无法启动 解决办法. 1.故障现象通过SQLServer服务管理器启动出错提示如下:通过服务管理器启动出错提示如下:2.原因分析安照《五种常见Windows服务启动问题的排错方法》这

找出所有非xml索引并重新整理的sql DECLAREcurCURSORFORSELECT[object_name]=s.name+'.'+OBJECT_NAME(A.object_id),B.nameFROMsys.dm_db_index_physical_stats(DB_ID('AdventureWorks'),NULL,null,null,null)ASAJOINsys.indexesASBONA.[object_id]=B.[

标签: sql server索引怎么用

本文链接地址:https://www.jiuchutong.com/biancheng/348783.html 转载请保留说明!

上一篇:SQL Server 索引结构及其使用(一)--深入浅出理解索引结构第1/4页(sql server索引的使用)

下一篇:获取MSSQL数据字典的SQL语句(mysql获取字段中的数字)

  • 企业增值税免税需要备案吗
  • 土地使用税返还是否征税
  • 对公账户余额和实际不符
  • 工程结算是含税还是不含税
  • 分期付款方式销售货物什么时候确认收入
  • 自建模具怎么做账
  • 暂估费用发票没到会计分录怎么写?
  • 别人帮开票钱要打给别人账户吗
  • 从外面买回来的菜怎么消毒
  • 外资企业解释
  • 交房租对方开发票怎么开
  • 利息算增值税吗
  • 为什么利润表的财务费用与利息费用逻辑不对
  • 集团统借统还利息
  • 建筑业异地预缴增值税
  • 小规模开普票要交税吗分录怎么做
  • 年末利润分配会计处理
  • 长期资产的含义
  • 经常访问的网站怎么恢复
  • 每日盈亏报表怎么算
  • 新买的电脑如何激活windows
  • pddocument.load
  • win10系统如何更改工作组
  • 进口应税消费品会计分录
  • 其他业务收入跨年调账
  • 结构性存款利息增值税
  • lcasensor是什么进程
  • windows默认网关应该设置为的地址
  • 我整理的邪恶铭刻所有卡牌及自制卡
  • 销售旧固定资产开票税目是什么
  • 未履行的应税合同缴纳印花税
  • 梵净山原名
  • 最大规模的科技公司
  • 企业会计准则存在的问题怎么写
  • 在php中如何对多条记录进行分页
  • 时间序列模型ARIMA的优缺点
  • 微软和梅赛德斯奔驰宣布合作
  • python 元类 详解
  • 自产产品对外赠送的会计处理方法
  • 固定资产一次性扣除政策2023
  • 计提怎么理解
  • 金税盘如何读入新购电子发票?
  • 制造费用转入什么
  • 研发费用属于什么会计科目
  • Simple Slug Translate 把WordPress固定链接自动翻译成英文
  • 怎么编制资金平衡表格
  • 中介公司服务范围都有哪些
  • 个体工商户季度超过9万怎么交税
  • 小规模纳税人企业所得税2023
  • 买一赠一是什么促销方式
  • 分期购车会计分录小规模
  • 债务重组损失计入什么科目2020
  • 收到利息收入如何做分录
  • 如何理解预付年金终值期数和系数和记忆方法
  • 购买电脑配件组件怎么选
  • 餐费补贴属于工资还是福利费
  • 普通发票如何抵扣税
  • 高新企业认定条件2022上海
  • mysql replace正则表达式
  • mysql分页实现
  • mysql导入导出sql文件
  • mysql无法创建函数
  • c3p0连接池提供了哪些方式来配置连接池的参数
  • mysql 复合查询
  • window2008 64位系统没有office组件问题分析及解决
  • centos配置vps
  • windows xp玩游戏
  • 进程aissca.exe
  • 使用 WinSCP 管理 Linux VPS/服务器上的文件 图文教程
  • cocos2d开发的知名游戏
  • linux shell 字符串转数字
  • css实现下拉菜单的思路是
  • python windows gui
  • 怎么查看u盘有没有传输过数据
  • unity3d 依赖注入
  • javascript总结笔记
  • unity3d all compiler errors
  • js实现复制文本
  • 天津税务局怎么申报社保
  • 长沙税务局几点上班下午
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设