2013-07-16 76 views
2

在Excel中,如果我在列A,B和C中說數字1,2和3.我可以在列D「= A + B」中編寫公式,然後在E列「 = d + C」。Excel如SQL中的計算

基本上,我可以在同一行使用計算列的結果。

我可以通過單行查詢來實現SQL中類似的功能嗎?

例如,像

SELECT A, B, C, A+B as D, D+C as E 
FROM TABLE1 

結果:1,2,3,3,6

+1

你應該可以做臨時工只要你的價值是相同的類型,否則你將需要投它們,你目前得到了什麼結果? –

+1

你必須使用子查詢或CTE。 SQL的規則說,有效地,單個「SELECT」子句中的所有列都是並行計算的(或者就好像這是發生的,即使不是這樣)。所以你不能在'E'計算中使用'D',因爲它還沒有可用。 –

回答

1

您可以使用計算的列時創建表作爲

CREATE TABLE tbl(id int, A int, B int, C int, D as A+B, E as A + B + C); 
insert tbl(A, B, C) values (1, 2, 3) 

或者使用

SELECT A, B, C, A+B as D, + A+B + C as E 
FROM TABLE1