select trim(ssmc) from zsgl minus select trim(ssmc) from ( select cblcode ssmc from c_cable union select dpnum ssmc from c_dpoint union select mhnum ssmc from d_manhle union select cabnum ssmc from c_cabint union select dtype||dnum ssmc from d_ductgp union select cblcode ssmc from w_fbecbl union select cabnum ssmc from w_fabint union select ternum ssmc from w_terminator union select plinename ssmc from d_pline union select dpnum ssmc from w_dpoint ) A
换种写法吧 SELECT SSMC FROM zsgl WHERE SSMC NOT IN (select cblcode ssmc from c_cable) AND SSMC NOT IN (select dpnum ssmc from c_dpoint) AND SSMC NOT IN (select mhnum ssmc from d_manhle)...接着下去then ok
考虑用外连接的方法: select ssmc from zsgl,(select cblcode ssmc from c_cable union select dpnum ssmc from c_dpoint union select mhnum ssmc from d_manhle union select cabnum ssmc from c_cabint union select dtype||dnum ssmc from d_ductgp union select cblcode ssmc from w_fbecbl union select cabnum ssmc from w_fabint union select ternum ssmc from w_terminator union select plinename ssmc from d_pline union select dpnum ssmc from w_dpoint) temptb where zsgl.ssmc=tempdb.ssmc(+) and tempdb.ssmc is null试试效率 ?
select trim(ssmc) from zsgl
minus
select trim(ssmc)
from
(
select cblcode ssmc from c_cable
union
select dpnum ssmc from c_dpoint
union
select mhnum ssmc from d_manhle
union
select cabnum ssmc from c_cabint
union
select dtype||dnum ssmc from d_ductgp
union
select cblcode ssmc from w_fbecbl
union
select cabnum ssmc from w_fabint
union
select ternum ssmc from w_terminator
union
select plinename ssmc from d_pline
union
select dpnum ssmc from w_dpoint
) A
SELECT SSMC FROM zsgl WHERE SSMC NOT IN
(select cblcode ssmc from c_cable) AND
SSMC NOT IN
(select dpnum ssmc from c_dpoint) AND
SSMC NOT IN
(select mhnum ssmc from d_manhle)...接着下去then ok
select ssmc from zsgl,(select cblcode ssmc from c_cable
union
select dpnum ssmc from c_dpoint
union
select mhnum ssmc from d_manhle
union
select cabnum ssmc from c_cabint
union
select dtype||dnum ssmc from d_ductgp
union
select cblcode ssmc from w_fbecbl
union
select cabnum ssmc from w_fabint
union
select ternum ssmc from w_terminator
union
select plinename ssmc from d_pline
union
select dpnum ssmc from w_dpoint) temptb
where zsgl.ssmc=tempdb.ssmc(+) and tempdb.ssmc is null试试效率 ?