需求:

  费用统计

环境:

  查询设计多张大表

解决方案:

  优化查询语句,封装成存储过程,建立索引,最终查询速度很不错。部署上线,告一段落。。。

一段时间后投诉来了。。。

客户投诉说查询没内容,我看了日志是超时了。我自己也通过应用查询了一把也是超市,sql profiler 抓下执行存储过程的语句,放到sqlserver management 中执行也是很慢。

当时十分费解,原因是当时开发时速度很快,怎么经过一段时间后就慢了呢?

回头继续写。。。

2014-07-27  继续。。

主要原理是多表连接时,违背了小表驱动原则。

自己测试时可能使用了一个小比重条件,的确是符合小表驱动原则,然后这种执行计划被缓存了。。

结果再客户查询的时候,他输入的是大比重条件,变成大表驱动,导致很慢。

知道原理后,解决方案就多了。

最新文章

  1. logstash+elasticsearch+kibana管理日志(安装)
  2. datatables中的Options总结(2)
  3. MSSQL N张表关联查询
  4. Spring In Action ②
  5. ORACLE中创建和删除临时表
  6. Gdata XML解析配置和简单使用
  7. andriod的简单用法2
  8. [Openstack]使用devstack自己主动化安装
  9. Java程序员面试题集(51-70)(转)
  10. 【python之路12】三元运算符(if)
  11. Sql Server 查询多行并一行
  12. Struts2+Spring+Hibernate环境搭建
  13. C# wav语音文件合并
  14. 基于python的统计公报关键数据爬取
  15. zepto中的scrollTo
  16. sparkSQL将谓词推入kudu引擎
  17. javascript 体验定时器
  18. La Vie en rose (模拟)
  19. Object对象的浅拷贝与深拷贝方法详解
  20. hadoop zookeeper高可用

热门文章

  1. UVa 615 - Is It A Tree?
  2. 《javascript高级程序设计》读书笔记(四)引用类型
  3. 报错:maven:java.lang.NoClassDefFoundError: org/apache/commons/io/Charsets
  4. redis学习笔记——RDB、AOF和复制时对过期键的处理
  5. database工具
  6. 微信公众平台开发小记(ASP.NET)
  7. GDB+GdbServer: ARM程序调试
  8. vConsole
  9. Android Exception 7(attempt to re-open an already-closed object )
  10. struts result动态结果集 带参数的结果集