用union + not exists 试试,效率不保证:
select a
from tabname
where ...
-- 上面是第一个sql
union
--下面是第二个sql
select a
from tabnameb
where ...
and not exists(
---------------
--这部分和第一个sql完全一样
select a
from tabname
where ...
----------------
)
存储过程加游标,可以实现。
自己写函数,单独一条select 做不到