• 背景:

MRO表中TimeStamp nvarchar(32),但实际上它存储的内容是日期(2015-09-09 11:20:30)。

现在我要执行这样一个sql语句:

Select t10.* from Tuning.MRO as T10 inner join Tuning.MRO_LteCell as T11 on T10.OID=T11.MROOID
Where T10.ObjectID=@ObjectIDand T10.UEID=@UEIDand (T10.TimeStamp>@BeginTime and T10.TimeStamp<@EndTime);

Tuning.MRO有3亿条记录

Tuning.MRO_LteCell有7亿记录

这时上边的sql语句执行时间是3分钟多,这时Tuning.MRO.TimeStamp是没有索引的。

  • 请问,这对整个情况,有什么好的优化方法?

1,)如果添加上Tuning.mro.TimeStamp的索引,是否和把TimeStamp类型改为DateTime类型具有一样的效果。

  • DBA给的回答

  从索引的角度来说,要少而精。

从你的sql角度来看。如果MRO的objectid能够定位返回的行数更少,而且使用频繁。可以在objectid上建立索引。 同理,也可以在ueid、timestamp上建立索引。

关键看哪个字段使用更频繁,返回行数更少。

一般来说如果是时间字段。建议使用datetime。

  1.占用字节更少,8位

  2.更兼容一些。比如如果输入的‘20150909’ 这样。SqlServer可以自动改变成2015-09-09这样的时间格式。

关于sql优化:http://www.cnblogs.com/wy123/category/834336.html

sqlserver中索引优化相关推荐

  1. mysql中distinct走索引吗_MySQL中索引优化distinct语句及distinct的多字段操作

    MySQL通常使用GROUPBY(本质上是排序动作)完成DISTINCT操作,如果DISTINCT操作和ORDERBY操作组合使用,通常会用到临时表.这样会影响性能. 在一些情况下,MySQL可以使用 ...

  2. distinct多个字段mysql_MySQL中索引优化distinct语句及distinct的多字段操作

    MySQL通常使用GROUPBY(本质上是排序动作)完成DISTINCT操作,如果DISTINCT操作和ORDERBY操作组合使用,通常会用到临时表.这样会影响性能. 在一些情况下,MySQL可以使用 ...

  3. SQLSERVER中如何忽略索引提示

    原文:SQLSERVER中如何忽略索引提示 SQLSERVER中如何忽略索引提示 当我们想让某条查询语句利用某个索引的时候,我们一般会在查询语句里加索引提示,就像这样 SELECT id,name f ...

  4. SQL优化中索引列使用函数之灵异事件

    SQL优化中索引列使用函数之灵异事件 在SQL优化内容中有一种说法说的是避免在索引列上使用函数.运算等操作,否则Oracle优化器将不使用索引而使用全表扫描,但是也有一些例外的情况,今天我们就来看看该 ...

  5. 关于MySQL中复合索引优化

    最近对两个开源系统进行反向工程ER图生成后,对比发现一个系统其中一个表中的复合索引的列个数对查询的效率有较大的影响~~ 于是上网查了下相关的资料:(关于复合索引优化的) 两个或更多个列上的索引被称作复 ...

  6. 【MySQL】索引优化中的最左前缀原则和索引下推

    目录 一.引入 二.覆盖索引 ​ 讲接下来的问题前首先讲一下联合索引的底层存储结构长什么样?联合索引的检索过程是什么样的呢? 三.最左前缀原则 最左前缀原则的定义 四.索引下推 五.小结 一.引入 在 ...

  7. 我是如何在SQLServer中处理每天四亿三千万记录的

    原文地址:http://www.cnblogs.com/marvin/p/HowCanIHandleBigDataBySQLServer.html 首先声明,我只是个程序员,不是专业的DBA,以下这篇 ...

  8. Sqlserver中一直在用又经常被忽略的知识点一

    已经有快2个月没有更新博客了,实在是因为最近发生了太多的事情,辞了工作,在湘雅医院待了一个多月,然后又新换了工作...... 在平时的工作中,Sqlserver中许多知识点是经常用到的,但是有时候我们 ...

  9. 转载:SqlServer数据库性能优化详解

    本文转载自:http://blog.csdn.net/andylaudotnet/article/details/1763573 性能调节的目的是通过将网络流通.磁盘 I/O 和 CPU 时间减到最小 ...

最新文章

  1. mpvue还在维护吗_mpvue 问题汇总(持续更新)
  2. python与人工智能编程-人工智能与Python关系浅谈
  3. 求有环单链表的环连接点位置
  4. Mysql(2)——mysql的配置文件信息(基本信息)
  5. 职业教育计算机课教学反思,关于高职计算机基础课的教学反思.doc
  6. 基于IdentityServer4的单点登录——项目基本结构与流程
  7. sql tempdb清理_SQL Server TempDB数据库和闩锁争用
  8. Java 多线程(八) 线程状态图
  9. 【linux所有命令——复习】
  10. python实现七种方法去除列表中的重复元素
  11. 虚拟机 linux 设置IP 常用命令
  12. 微信接入之获取用户头像
  13. Main Menu菜单栏消失解决
  14. 总结:6个不得不看的APP获客模式
  15. 2015年中国云计算市场回顾与展望
  16. 基于yoloV7-pose添加任意关键点 + 多类别分类网络修改
  17. 12.unity编程基础
  18. 银行转账带来的死锁问题
  19. 什么是多天线MIMO?
  20. Failed to instantiate CLSID_VirtualBox w/ IVirtualBox, but CLSID_VirtualBox w/ IUnknown works.

热门文章

  1. HTTP/TCP/IP协议
  2. 美国地铁列车相撞可能由设备陈旧引发(组图)
  3. springboot整合freemarker(转)
  4. 第十六章 tcp_wrappers
  5. Centos 7 安装 rabbitmq 3.6.6
  6. 在DWZ框架中整合kindeditor复文本框控件
  7. 微信小程序惩治“老赖” 河北高院“老赖地图”上线
  8. jconsole工具使用----jvm内存泄漏问题
  9. 断言(assert)和程序的安全保证
  10. 2015年度打榜之数据备份硬件