我在加入表和視圖後創建視圖。 該視圖包含連接中的一些實際列,其中一些列是計算列(讓我們稱它們爲type1)。其中一些是計算列(類型2)的計算。 有沒有什麼辦法可以引用type1列來計算type2而不是再次編寫整個代碼? (我不想創建另一個子查詢),只是檢查是否有任何有效的方法來編寫代碼。這裏不張貼實際的代碼,這是我想要做的簡稱:編寫查詢的更好方法
Create view ABCD
col1,col2 , calc_col1, calc_col2 , Calc_col3
as
select a.col1 as col1 ,
a.col2 as col2,
case when some_calulations then 2 else 0 end as calc_col1,
(case when some_calulations then 2 else 0 end) - a.somecol as calc_col2 ,
((case when some_calulations then 2 else 0 end) - a.somecol) + 5)as calc_col3
from Table1 as a
left join view2 as b
on join_condition
你可以把它寫在所需的值傳遞的「某些值的函數「但這似乎是低效的執行,但更容易維護。 – xQbert