【问题标题】:Alias names to with rollup in SQL queries?SQL查询中汇总的别名?
【发布时间】:2013-09-24 16:47:04
【问题描述】:

我在我的 sql 查询中使用with rollup。我没有得到汇总的别名。

我的 SQL 是

SELECT [Column1],
       sum([Column2])
FROM   Tablea
GROUP  BY [Column2] WITH ROLLUP 

返回

s       8
t       8
j       8
null    24 

如何替换总行中的NULL

【问题讨论】:

    标签: sql tsql stored-procedures sql-server-2008-r2 rollup


    【解决方案1】:

    您可以在CASE 表达式中使用GROUPING 函数。

    SELECT CASE
             WHEN GROUPING([Column1]) = 1 THEN 'Total'
             ELSE [Column1]
           END [Column1],
           sum([Column2])
    FROM   Tablea
    GROUP  BY [Column1] WITH ROLLUP 
    

    SQL Fiddle

    【讨论】:

    • @Ethan:问题应该在问题而不是评论中提出;所以他们可以在Answers而不是额外的评论中得到回答。
    【解决方案2】:
    select 
    isnull([column1],'rollup'), 
    sum([column2] )
    from tableA
    group by [column1] 
    WITH ROLLUP
    

    【讨论】:

    【解决方案3】:
    SELECT ifnull([column1],'total'),
           sum([Column2])
    FROM   Tablea
    GROUP  BY [Column2] WITH ROLLUP 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-20
      • 2021-05-05
      • 2021-11-16
      • 2020-03-07
      • 1970-01-01
      • 2010-09-26
      • 1970-01-01
      相关资源
      最近更新 更多