日期:2014-05-17  浏览次数:20648 次

一条select语句
查询一张表的记录
A表   里面有   IP,DNS两个字段,
现在要求查询出来的结果是   如果没有IP为空就输出DNS,或者DNS为空就输出IP


------解决方案--------------------
都不为空就一起输出吗?
SELECT NVL(IP,DNS) FROM TABLE
UNION
SELECT NVL(DNS,IP) FROM TABLE
------解决方案--------------------
select decode(ip,null,dns,ip) ip,decode(dns,null,ip,dns) dns from 表A
------解决方案--------------------
一列:

select nvl(IP,DNS)
from A
union
select nvl(DNS,IP)
from A;

---------------------------
两列:
select decode(IP,null,DNS,IP) as IP,
decode(DNS,null,IP,DNS) as DNS
from A;