2011-09-07 134 views
1

我有2個sql(每個sql約10行加入大約5個表)。這2 sqls返回相同的列。我只想在sql1沒有返回結果的情況下執行sql2。多個Oracle查詢

如何在一個SQL中做到這一點?

+0

請張貼的SQL語句。 –

回答

1
query1 
UNION ALL 
(query2 
    WHERE NOT EXIST (query1) 
) 

在Oracle中,你也可以因素:

WITH conditional_query AS (query1) 
SELECT * FROM conditional_query 
UNION ALL 
(query2 WHERE NOT EXIST (SELECT NULL FROM conditional_query)) 
+0

好吧,我最終使用coalesce。謝謝你的想法 – Madhu