簡體   English   中英

使用as命令創建了4列,現在需要添加所有4列

[英]created 4 columns with as command, now need to add all 4 columns

我正在使用sql將相當復雜的數據庫引用到excel中。 有一個表每個實例具有4行,我設法使用excel表在同一實例上使它們成為4列:

Max(case when(table1.column1 ='a')然后table1.column2其他0結束)為[A],

Max(case when(table1.column1 ='b')然后table1.column2其他0結束)為[B],

Max(case when(table1.column1 ='c')then table1.column2 Else 0 End)as [C],

Max(case when(table1.column1 ='d')然后table1.column2其他0結束)為[D]

在代碼的SELECT部分​​中。

現在,我需要將所有4個創建的列中的值添加到我可以引用的第5列中,但是我一直遇到問題。 我最初只是嘗試過Total ='A'+'B'+'C'+'D',但這只是給我一個文本行,每行都帶有“ ABCD”,而不是在列中添加值。 我已驗證創建的列中的值是數字。

我基本上是在尋找一種使用AS命令在其他列中創建的列名稱作為公式一部分的方法。

兩種方式,短期和長期。

短篇:

SUM(table.column2) as 5thElement

長一:

Max( case when(table1.column1 = 'a') Then table1.column2 Else 0 End) +
Max( case when(table1.column1 = 'b') Then table1.column2 Else 0 End) +
Max( case when(table1.column1 = 'c') Then table1.column2 Else 0 End) +
Max( case when(table1.column1 = 'd') Then table1.column2 Else 0 End)

祝好運!

沒關系,我想通了...

總計=(最大值(當(table1.column1 ='a'的情況下,則table1.column2其他0結束))+(最大(當(table1.column1 ='b')的情況下table1.column2其他0結束))+ (Max(case when(table1.column1 ='c')then table1.column2 Else 0 End))+(Max(Case when(table1.column1 ='d')then table1.column2 Else 0 End))

我只需要刪除命名新列的4條AS命令,因為我實際上並沒有嘗試在公式中包括列名。 感謝您的幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM