能否引用前面出現過的自定義列名?NO!

------問題--------------------
field1,field1是table1中的字段名 
這樣的語句總報錯:列名   'A '   無效 
select   field1+field2   as   A,A*2   as   B,B*3   as   C,C*4   from   table1 

我想引用前面出現過的計算列,能不能實現?如何實現? 
不希望這樣實現 
select   field1+field2   ,(field1+field2)*2,((field1+field2)*2)*3   ...   from   table1 

------解決方案--------------------
沒辦法,SQL中計算列不能直接拿來用。 

或者你這麼寫 

Select *, B *3 As C From (Select A, A * 2 As B From (select field1+field2 as A from table1) A) B 
------解決方案--------------------
這個方法還不如你上面的那種寫法 
------解決方案--------------------
沒有辦法。 


用樓上說的子查詢。 


------解決方案--------------------
不行的,MS SQL中計算列不能拿來直接用的。 
------解決方案--------------------
SQL Server現在還無法做到這麼智能的解析你定義的別名。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章