Sql 如何克服这个问题。如果管理器不可用,则显示管理器名称“NA”。如果电话号码不可用,则显示为“NA”
我编写了如下查询:Sql 如何克服这个问题。如果管理器不可用,则显示管理器名称“NA”。如果电话号码不可用,则显示为“NA”,sql,oracle,Sql,Oracle,我编写了如下查询: 1 select resort.resortid,resort.resortname,nvl(manager.name,'NA')MANAGERNAME, 2 nvl(manager.phone,'NA')PHONENO 3 from resort join manager on resort.managerid=manager.managerid 4 order by resort.resortid; 问题是,我没有得到包含空值的输出。常规的内部联接将只返回符合联
1 select resort.resortid,resort.resortname,nvl(manager.name,'NA')MANAGERNAME,
2 nvl(manager.phone,'NA')PHONENO
3 from
resort join manager on resort.managerid=manager.managerid
4 order by resort.resortid;
问题是,我没有得到包含空值的输出。常规的内部联接将只返回符合联接条件的行。您正在寻找左联接:
选择resort.resortid,
度假村名称,
NVLmanager.name,'NA'managername,
NVLmanager.电话,'NA'电话号码
从度假村
LEFT JOIN manager ON resort.managerid=manager.managerid
通过resort.resortid订购;