位置: 编程技术 - 正文

SQL查询效率注意事项小结(sql 查询效率)

编辑:rootadmin
一、查询条件精确,针对有参数传入情况 二、SQL逻辑执行顺序   FROM-->JOIN-->WHERE-->GROUP-->HAVING-->DISTINCT-->ORDER-->TOP 三、横向 查询需要的字段 当在SQL语句中连接多个表时,请使用表的别名并把别名前缀于每个Column上这样一来,就可以减少解析的时间并减少那些由Column歧义引起的语法错误 四、少做重复工作 控制同一语句的多次执行,特别是一些基础数据的多次执行是很多程序员很少注意的 减少多次的数据转换 杜绝不必要的子查询和连接表,子查询在执行计划一般解释成外连接,多余的连接表带来额外的开销 五、关于零时表#与表变量@ 如果语句很复杂,连接太多,可以考虑用临时表和表变量分步完成 如果需要多次用到一个大表的同一部分数据,考虑用临时表和表变量暂存这部分数据 如果需要综合多个表的数据,形成一个结果,可以考虑用临时表和表变量分步汇总这多个表的数据 关于临时表和表变量的选择,在数据量较多的情况下,临时表的速度反而更快 SELECT INTO会比CREATE TABLE + INSERT INTO的方法快,但是SELECT INTO会锁定TEMPDB的系统表SYSOBJECTS、SYSINDEXES、SYSCOLUMNS,在多用户并发环境下,容易阻塞其他进程 六、子查询 子查询可以用IN、NOT IN、EXISTS、NOT EXISTS引入 NOT IN、NOT EXISTS的相关子查询可以改用LEFT JOIN代替写法 如果保证子查询没有重复 ,IN、EXISTS的相关子查询可以用INNER JOIN 代替 IN的相关子查询用EXISTS代替 七、索引 避免对索引字段进行计算操作 SELECT ID FROM T WHERE NUM/2= 应改为: SELECT ID FROM T WHERE NUM=*2 避免在索引字段上使用NOT,<>,!= 避免在索引列上使用IS NULL和IS NOT NULL 避免在索引列上出现数据类型转换 避免在索引字段上使用函数 避免建立索引的列中使用空值 不要对索引字段进行多字段连接 WHERE FAME+'. '+LNAME='HAIWEI.YANG' 应改为: WHERE FNAME='HAIWEI' AND LNAME='YANG' 八、多表连接 多表连接的时候,连接条件必须写全,宁可重复,不要缺漏 连接条件尽量使用聚集索引 九、其他 在可以使用UNION ALL的语句里,使用UNION ALL 避免在WHERE子句中使用IN,NOT IN,OR 避免使用耗费资源的操作,带有DISTINCT,UNION,MINUS,INTERSECT,ORDER BY的SQL语句会启动SQL引擎执行,耗费资源的排序(SORT)功能. DISTINCT需要一次排序操作, 而其他的至少需要执行两次排序 LIKE ‘%%' 这种查询不会引用索引,而LIKE ‘X%'则会引用范围索引。

推荐整理分享SQL查询效率注意事项小结(sql 查询效率),希望有所帮助,仅作参考,欢迎阅读内容。

SQL查询效率注意事项小结(sql 查询效率)

文章相关热门搜索词:sql查询注意事项,sql语句怎么看效率,sql 查询效率,sql查询注意事项,sql 查询效率,查询sql执行效率,sql查询注意事项,sql查询注意事项,内容如对您有帮助,希望把文章链接给更多的朋友!

oracle学习笔记(二) 一、多行函数又称组合函数(GroupFunctions)、聚合函数1、TypesofGroupFunctionsavg、count、max、min、stddev、sum、varianceavg求平均数selectavg(nvl(列1,0))from表1count求

sqlserver 数据库压缩与数据库日志(ldf)压缩方法分享 Access操作很简单,具体不步骤如下:打开你mdb数据库,工具-->数据库实用工具-->压缩和修复数据库(c)...SQLSERVER一般情况下,SQL数据库的收缩

SQL语句的执行原理分析 原理:第一步:应用程序把查询SQL语句发给服务器端执行。我们在数据层执行SQL语句时,应用程序会连接到相应的数据库服务器,把SQL语句发送给服务器处

标签: sql 查询效率

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

上一篇:SQLSERVER查询所有数据库名,表名,和字段名的语句(sqlserver查询所有表的行数)

下一篇:oracle学习笔记(二)(oracle教程入门)

  • 未开票收入退回可以冲税吗
  • 财务状况说明表财务报表有什么区别
  • 外购商品发给员工增值税要怎么算
  • 计提本月短期借款利息是权责发生制吗
  • 个人所得税汇算清缴情况报告
  • 税务信用级别为m级
  • 税款已缴未入库是怎么回事
  • 上季度弥补以前年度亏损与本季度亏损
  • 发票多开了一张怎么处理?
  • 外经证缴纳个税流程
  • 非正常损失进项转出额如何计算
  • 离职员工的工资应该多久结清
  • 房地产成本核算会计分录
  • 企业所得税税负怎么算
  • 印花税合同金额和结算金额不一致
  • 发生破损
  • 小规模税务季报都填写哪些表格呢
  • 原始凭据
  • 增值税专用发票电子版
  • 转正工资差额什么意思
  • 1697508871
  • 房地产销售广告是要约还是要约邀请?原因是什么?
  • win11怎么设置最佳能效模式
  • 内部控制的概念最早是从什么得来的
  • 清理系统所有垃圾
  • 在路由器设置中怎么设置
  • 销售部发生广告宣传费计入财务费用
  • php字符串定义
  • php preg_grep
  • dll进程
  • 股息红利要交税吗
  • 年底会计结账
  • win7纯净版系统
  • js循环有哪些
  • 增值税专用发票丢了怎么补救
  • Win11 Build 25336 预览版发布:Snap 窗口新增最近 20 个标签选项
  • typescriptlang
  • 航天金税税控盘运行环境
  • 帝国cms使用手册
  • 资金占用费怎么开票
  • 收到增值税收入423300,款项已存入国库
  • python循环语句的语法
  • 进项税额转出的进项税额如何处理
  • 应税销售行为有哪些
  • 负债类账户期末余额在借方还是贷方
  • 机械租赁属于什么科目
  • 国有控股企业和国有参股企业的区别
  • 坏账核算备抵法的优缺点
  • 递延所得税的会计核算
  • 项目清算后未售房产怎么纳税
  • 广告发票能抵扣吗
  • 出口抵减内销产品应纳税额分录
  • 固定资产多少钱算固定资产
  • 已抵扣未申报的税额如何转出
  • 未认证的进项税发票入账
  • 增值税计提多了已经跨年度怎么办
  • 企业资产负债表怎么做
  • 预缴的所得税怎么申请退税
  • 银行代发工资业务收费吗
  • 代开专票作废退税怎么做账?
  • 失控发票进项税转出成本调整
  • 非本公司员工能否享受本公司的福利
  • 简易征收可以抵税吗
  • 资本公积金什么时候提取
  • 在centos上安装ftp服务应运行指令
  • sql时间用什么数据类型
  • ubuntu系统升级后无法进入系统
  • 电脑开机出现英文字母开不了机
  • windows8.1大小
  • windows xp计算器
  • 怎么用U盘装系统
  • 个性化定制方案怎么写
  • linux的内存
  • Android游戏开发教程
  • dos查看内存命令
  • vue配置api
  • linux ls-l命令
  • 车船税多少钱一辆
  • 广东省外经贸厅官网
  • 注销的卡补回来还能恢复以前的套餐吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设