2011-05-12 238 views
0

我在寫存儲過程。請讓我知道是否有任何好的語法來完成這個:

我有三個表:table1,table2,table3。
我想要將table1連接到table2,但是如果table2中的主鍵爲零,那麼我想要連接table1和table3。

有沒有辦法在Oracle存儲過程中有條件地執行此操作?
Oracle-存儲過程

代碼段是這樣的:

選擇t1.col1,t2.colABC

表1 T1,T2表2,表3 T3

t1.colYear = Var_year
AND
t2.colID =「select(if t1.colGroup!= 0,select t1.colGroup。
else t3.colGroup)

TIA
-NewBee

回答

0

創建兩個查詢。

只有在table2中的主鍵不爲零的情況下,第一個查詢才能連接table1和table2。

第二個查詢應該只在table2中的主鍵爲零的情況下將table1與table2和table3結合在一起。

將兩個查詢的結果聯合在一起。