sql - 容纳数据透视表中的行总和

标签 sql database sql-server-2008-r2 pivot

我有下表:

enter image description here

我想得到如下结果:

mon  QDBCount   MINISTERIALECount  Sum

Jan    5           3                8

Feb    4           9               13

Mar    6           5               11

.
.
.

注意:QDBCount 和 MINISTERIALECount 是上表中这两个在特定月份到达的次数

为此我做了以下查询:

select * from
(
select convert(char(4),[Data creazione pratica],100) mon  , 
[Cod# prodotto],count([Cod# prodotto]) cnt
from dbPratiche 
where Compagnia='GENERTEL'
group by [Cod# prodotto], convert(char(4),[Data creazione pratica],100)


) T 
pivot
(
 max(cnt)
 for [Cod# prodotto] 
 in ([QDB],[MINISTERIALE])
)p

我得到的结果是:

enter image description here

我想为每一行取第二列和第三列的总和(如上文预期结果中所述)。但不能带。

如何更改查询?可以查询什么

最佳答案

嗯,这有点蹩脚但是:

WITH ctablee (mon, qdb, ministeriale) 
     AS (SELECT "columns what you use" 
         FROM   (SELECT CONVERT(CHAR(4), [data creazione pratica], 100) mon, 
                        [cod# prodotto], 
                        Count([cod# prodotto])                          cnt 
                 FROM   dbpratiche 
                 WHERE  compagnia = 'GENERTEL' 
                 GROUP  BY [cod# prodotto], 
                           CONVERT(CHAR(4), [data creazione pratica], 100)) T 
                PIVOT ( Max(cnt) 
                      FOR [cod# prodotto] IN ([QDB], 
                                              [MINISTERIALE]) )p) 
SELECT mon, 
       qdb, 
       ministeriale, 
       ministeriale + qdb 
FROM   ctablee  

关于sql - 容纳数据透视表中的行总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21016321/

相关文章:

mysql - 修改 int 为 float (mysql)

sql - Postgres,根据条件将一行分成多行

database - 使用事务和数据感知组件编写 Delphi 数据库应用程序的首选方法

c# - 如何使用 C# 在 SSAS 中测试与数据源的连接

sql-server - 使用已安装的命名实例重命名 SQL Server

sql-server - 如何在SQL Server中的WITH子句中执行动态查询

sql - 甲骨文: '= ANY()' 与 'IN ()'

SQL Server 存储过程包含文件语句

python - PyMongo 对 float 的错误处理

c# - 如何在c#中将dataGridView行文本插入数据库