आप इसे बेहतर प्रदर्शन करने के लिए (और बनाए रखने में आसान) बनाने के लिए उपयोग कर सकते हैं:
WITH query1 as (
select 1, 2
from dual
where 1=0
connect by level <= 10
),
query2 as (
select 3, 4
from dual
connect by level <= 10
)
select *
from query1
union all
select *
from query2
where not exists (
select null
from query1
);
जैसा कि यह 10 पंक्तियों को query2 से वापस करना चाहिए। यदि आप query1 से जहाँ 1=0 हटाते हैं (जिसके कारण यह वास्तव में पंक्तियाँ लौटाता है), तो आपको query1 से 10 पंक्तियाँ मिलनी चाहिए।