有三个表:A、B、C,A与B、C有关联,A先与B查找,如找不到再从C中查询。SQL语句怎么写?
A表结构:id,code,其它B表结构:id1,code,name,其它C表结构:id2,code,name,其它要显示的结果为:a.id,A.code,name,cod...
A表结构:id,code,其它
B表结构:id1,code,name,其它
C表结构:id2,code,name,其它
要显示的结果为:a.id,A.code,name,code会存在B、C表中,但B、C表中的code不会重复 展开
B表结构:id1,code,name,其它
C表结构:id2,code,name,其它
要显示的结果为:a.id,A.code,name,code会存在B、C表中,但B、C表中的code不会重复 展开
1个回答
展开全部
select a.id, a.code, nvl(b.name, c.name) as name
from a
left join b on a.id = b.id1
left join c on a.id = c.id2
from a
left join b on a.id = b.id1
left join c on a.id = c.id2
更多追问追答
追问
在SQL测试时,提示nvl不是可以识别的 内置函数名称。
测试的数据中,B,C的字段‘name’不一样应该没问题吧
追答
你这是什么数据库?oracle, sqlserver, mysql?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询