摘要:
sql中 with rollup 、with cube、grouping 统计函数用法 SQL codewith rollup 、with cube、groupingCUBE 和 ROLLUP 之间的区别在于:CUBE 生成的结果集显示了所选列中值的所有组合的聚合。ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。grouping:当用 CUBE 或 ROLLUP 运算符添加行时,附加的列输出值为1,当所添加的行不是由 CUBE 或 ROLLUP 产生时,附加列值为0。--例如DECLARE @T TABLE(名称 VARCHAR(1) , 出版商 VARCHAR(10), 价格 阅读全文
摘要:
ROLLUP 运算符生成的结果集类似于 CUBE 运算符生成的结果集。下面是 CUBE 和 ROLLUP 之间的具体区别:CUBE 生成的结果集显示了所选列中值的所有组合的聚合。ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。ROLLUP 优点:(1)ROLLUP 返回单个结果集,而 COMPUTE BY 返回多个结果集,而多个结果集会增加应用程序代码的复杂性。(2)ROLLUP 可以在服务器游标中使用,而 COMPUTE BY 则不可以。(3)有时,查询优化器为 ROLLUP 生成的执行计划比为 COMPUTE BY 生成的更为高效。下面对比一下GROUP BY 、CUBE 阅读全文
摘要:
CAST 和 CONVERT 将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。语法 使用 CAST:CAST ( expression AS data_type )使用 CONVERT:CONVERT (data_type[(length)], expression [, style])参数 expression是任何有效的 Microsoft® SQL Server™ 表达式。有关更多信息,请参见表达式。data_type目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。有关可用的数据 阅读全文
摘要:
1. ISNULL使用指定的替换值替换 NULL。语法ISNULL ( check_expression , replacement_value ) 2. ROLLUP ( )生成简单的 GROUP BY 聚合行以及小计行或超聚合行,还生成一个总计行。返回的分组数等于 中的表达式数加一。例如,请考虑下面的语句。SELECT a, b, c, SUM ( )FROM TGROUP BY ROLLUP (a,b,c)会为 (a, b, c)、(a, b) 和 (a) 值的每个唯一组合生成一个带有小计的行。还将计算一个总计行。列是按照从右到左的顺序汇总的。列的顺序会影响 ROLLUP 的输出分组.. 阅读全文