摘要:
最近发现一个视图出奇的慢,在生产环境还好,由于服务器配置较高,没有察觉出来。但是做了一次修改后在开发版和测试版就直接查询不出结果了.就连select count(1) from 都运行2个小时没有结果。 于是决定放手去查一查问题出现在哪里,由于这个视图是关联了N多表和视图而成的,只能根据查询计划一步步看了,在经过一番调查后发现了,其中的一个视图中是由2个查询语句union成的一个视图,上面的视图有100多万数据,下面的则有1万条数据,2个通过union比较后花费了大量的资源,改写成union all 就不用进行比较了,速度一下子提升了N倍,这里N绝对大于100,select 的结果呼之即出了. 阅读全文
posted @ 2013-11-19 20:57
Kevin Gao
阅读(231)评论(0)推荐(0)
编辑
摘要:
今天在写SQL脚本时用到了Arg这个函数,发现了一个问题就是如果取平均数的字段是int类型那么,无论你怎么平均都不会有小数位出来。因为Arg默认将你取的平均值转换为了你的字段对应的类型int。那么如果你想得到小数位怎么办呢? 那就需要按照如下情况进行转换了: select cast(avg(cast(svrd.Value as decimal(4,2))) as decimal(4,2)) 平均分 from SV_ReplyDetail svrd. 阅读全文
posted @ 2013-11-19 11:06
Kevin Gao
阅读(340)评论(0)推荐(0)
编辑