sqlserver rollup Linux

if not (‘..#t’) is null

drop table #t

Go

table #t( (5), (4), int)

#t

N’Table’,N’Blue’,124 union all

N’Table’,N’Red’,223 union all

N’Chair’,N’Blue’,101 union all

N’Chair’,N’Red’,210

Go

=case when ()=1 then ‘ALL’ else (Item, ”)end,

=case when ()=1 then ‘ALL’ else (,”)end,

sum()

from #t group by , with cube

/*

Item Color

—– —– ———–

Chair Blue 101

Chair Red 210

Chair ALL 311

Table Blue 124

Table Red 223

Table ALL 347

ALL ALL 658

ALL Blue 225

ALL Red 433

(9 個資料列受到影響)

*/

/*

包含带有许多维度的 CUBE 的 语句可能生成很大的结果集,因为这些语句会为所有维度中值的所有组合生成行。

这些大结果集包含的数据可能过多而不易于阅读和理解。这个问题有一种解决办法是将 语句放在视图中:

*/

view

as

=case when ()=1 then ‘ALL’ else (Item, ”)end,

=case when ()=1 then ‘ALL’ else (,”)end,

sum()

from tb group by , with cube –視圖中不能用臨時表,故改之

–然后即可用该视图来只查询您感兴趣的维度值:

*

FROM

WHERE Item = ‘Chair’ AND Color = ‘ALL’

/*

Item Color

——————– ——————– ———

Chair ALL 311.00

*/

–3 汇总数据

/*

用 汇总数据在生成包含小计和合计的报表时sqlserver rollupsqlserver rollup,运算符很有用。

运算符生成的结果集类似于 CUBE 运算符所生成的结果集。

CUBE 和 之间的区别在于: CUBE 生成的结果集显示了所选列中值的所有组合的聚合。

生成的结果集显示了所选列中值的某一层次结构的聚合。 例如sqlserver rollup Linux,简单表 #t

中包含:Item Color

*/

=case when ()=1 then ‘ALL’ else (Item, ”)end,

=case when ()=1 then ‘ALL’ else (,”)end,

sum()

from #t group by , with

/*

Item Color

—– —– ———–

Chair Blue 101

Chair Red 210

Chair ALL 311

Table Blue 124

Table Red 223

Table ALL 347

ALL ALL 658

(7 個資料列受到影響)

*/

/*

如果查询中的 关键字更改为 CUBE,那么 CUBE 结果集与上述结果相同,只是在结果集的末尾还会返回下列两行:ALL Blue 225.00

ALL Red 433.00

CUBE 操作为 Item 和 Color 中值的可能组合生成行。

例如,CUBE 不仅报告与 Item 值 Chair 相组合的 Color 值的所有可能组合(Red、Blue 和 Red + Blue),

而且报告与 Color 值 Red 相组合的 Item 值的所有可能组合(Chair、Table 和 Chair + Table)。

对于 GROUP BY 子句中右边的列中的每个值, 操作并不报告左边一列(或左边各列)中值的所有可能组合。例如,

并不对每个 Color 值报告 Item 值的所有可能组合。

操作的结果集具有类似于 BY 所返回结果集的功能;然而,具有下列优点: 返回单个结果集; BY 返回多个结果集sqlserver rollup,而多个结果集会增加应用程序代码的复杂性。

可以在服务器游标中使用; BY 不可以。

有时sqlserver rollup Linux,查询优化器为 生成的执行计划比为 BY 生成的更为高效。

*/

公告:
1. 本站所有资源来源于用户上传和网络,如有侵权请联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长处理!
6. 本站不售卖代码,资源标价只是站长收集整理的辛苦费!如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
7. 站长QQ号码 2205675299

资源库 - 资源分享下载网 » sqlserver rollup Linux

常见问题FAQ

关于资源售价和售后服务的说明?
本站所有资源的标价均为本站收集资源的辛苦费,不代表资源本身的价值。软件是高智慧高价值的商品,不可能是白菜价。本站资源标价只是赞助费用,收取的赞助费仅用来维持本站的日常运营!毕竟收集整理资料需要投入云计算资源和站长大量的精力。
代码有没有售后服务和技术支持?
由于代码的运行具有不可预见性,本站不保证代码完整可运行,不提供技术支持和售后服务。 本站原创代码都是站长自己开发的,可以有偿提供技术支持服务。 网站里标明【亲测】的代码都是站长亲测过的,其他的代码由于精力有限,没有一一测试,不能保证代码就一定能够使用,更没有技术支持服务,下载前请自行斟酌。
有没有搭建服务?
由于搭建服务比较费时费力,所以本站除了原创代码外均不提供搭建服务。本站分享代码纯属兴趣爱好,不以盈利为目的,请勿咨询有没有搭建服务,谢谢理解。
链接地址失效了怎么办?
请带上资源链接地址联系客服,工作时间内我们看到后将第一时间回复。
关于解压密码
本站资源一般都没有加密,如果发现需要解压密码的,那么就输入 hao.35dc.com 试试。

发表评论

资源库,由老程序员细心甄别、精心筛选,只为提供优质的源码资源

关于我们 联系我们