select r.req_no,b.name,c.name from cr r,cc c,cb b where r.req_no = c.req_no and c.name = b.name;
要求 取 cb或者cc中的 一个NAME 不是两个同时取
select r.req_no,nvl( b.name,c.name)name from cr r,cc c,cb b where r.req_no = c.req_no and c.name = b.name;
select cr.req_no cb.name from cb,cc,cr where cb.req_no=cc.req_no and cr.req_no=cb.req_no and cb.name = cc.name;
楼主没说明根据什么条件分别取不同字段, 假设根据CR表中的TYPE字段值进行区分 SELECT r.req_no, decode(r.type,1,b.name,c.name) FROM cr r left join cc c on r.req_no = c.req_no left join cb b on c.name = b.name;
select r.req_no,nvl( b.name,c.name)name from cr r,cc c,cb b where r.req_no = c.req_no and c.name = b.name;
假设根据CR表中的TYPE字段值进行区分
SELECT r.req_no,
decode(r.type,1,b.name,c.name)
FROM cr r
left join cc c on r.req_no = c.req_no
left join cb b on c.name = b.name;