仓酷云

标题: MSSQL网页设计空单位格的利用 [打印本页]

作者: 萌萌妈妈    时间: 2015-1-16 22:33
标题: MSSQL网页设计空单位格的利用
限制,如果WHERE子句的查询条件里有不等号(WHEREcoloum!=),MySQL将无法使用索引。类似地,如果WHERE子句的查询条件里使用了函数(WHEREDAY(column)=),MySQL也将无法使用索引。单位格
利用MDX数值函数如avg、count等的时分,一般会疏忽空单位格!独一的破例是count函数。它供应了INCLUDEEMPTY
参数,指明是不是包含空单位格。
1:NONEMPTY关头字
一样平常利用在轴级别。
select
{[Measures].[StoreSales]}oncolumns,
NONEMPTY{[time2].[一切time2].[1997].[Q4].[10].children}onrows
fromSales
显现1997年10月逐日非空的发卖。
无NONEMPTY关头字则显现一切发卖。
2:count
10月发卖日计数(不管有没有发卖)
withmember[time2].[发卖日]ascount([time2].[一切time2].[1997].[Q4].[10].children)
select
{[Measures].[StoreSales]}oncolumns,
{[time2].[发卖日]}onrows
fromSales

10月发卖日计数(仅包含有发卖日期)
withmember[time2].[发卖日]ascount([time2].[一切time2].[1997].[Q4].[10].children,
ExcludeEmpty)
3:sum和avg等函数
这些函数关于空单位,则疏忽!(不转换为0)




在ORDERBY操作中,MySQL只有在排序条件不是一个查询条件表达式的情况下才使用索引。(虽然如此,在涉及多个数据表查询里,即使有索引可用,那些索引在加快ORDERBY方面也没什么作用)。
作者: 不帅    时间: 2015-1-18 22:33
原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。
作者: 兰色精灵    时间: 2015-1-23 21:14
还不是性能有问题!否则面向对象的数据库早就实现了!建议使用CLR的地方一般是和应用的复杂程度或操作系统环境有很高的耦合度的场景。如你想构建复杂的算法,并且用到了大量的指针和高级数据模型。
作者: 深爱那片海    时间: 2015-1-31 20:05
以前的DTS轻盈简单。但是现在的SSIS虽然功能强大了很多,但是总是让人感觉太麻烦。看看论坛中询问SSIS的贴子就知道。做的功能太强大了,往往会有很多用户不会用了
作者: 愤怒的大鸟    时间: 2015-2-6 22:01
这是一个不错的新特性。虽然索引的附加字段没有索引键值效率高,但是相对映射到数据表中效率还是提高了很多。我做过试验,在我的实验环境中会比映射到表中提高30%左右的效率。
作者: 分手快乐    时间: 2015-2-18 22:02
这是一个不错的新特性。虽然索引的附加字段没有索引键值效率高,但是相对映射到数据表中效率还是提高了很多。我做过试验,在我的实验环境中会比映射到表中提高30%左右的效率。
作者: 小妖女    时间: 2015-3-6 11:07
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
作者: 精灵巫婆    时间: 2015-3-13 00:08
光写几个SQL实在叫无知。
作者: 飘灵儿    时间: 2015-3-20 06:42
但是随着数据量的增大,这种成本差距会逐渐减小,趋于相等。(500万数量级只相差10%左右)




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2