
sql 关联查询外键为空的情况
表A:id,p1(与B关联),p2(与B关联)表B:idB有一条记录idp1sA有一条记录idp1p211NULL怎么查A这条记录,级联查询,查询结果A.idp1.idp...
表A:id, p1(与B关联), p2(与B关联)
表B:id
B有一条记录
id p
1 s
A有一条记录
id p1 p2
1 1 NULL
怎么查A这条记录,级联查询,查询结果
A.id p1.id p1.p p2.id p2.p
1 1 s NULL NULL 展开
表B:id
B有一条记录
id p
1 s
A有一条记录
id p1 p2
1 1 NULL
怎么查A这条记录,级联查询,查询结果
A.id p1.id p1.p p2.id p2.p
1 1 s NULL NULL 展开
6个回答
展开全部
外键为空的情况会导致查询结果为空,但是通过如:左连接的方式可以查出所有数据
如A表字段 a,b(外键),c;B表字段:b,d
select A.*,d from A left join B on A.b=B.b
如果查询外键不为空的数据 可以加where条件
select A.*,d from A left join B on A.b=B.b where B.b is not null
如A表字段 a,b(外键),c;B表字段:b,d
select A.*,d from A left join B on A.b=B.b
如果查询外键不为空的数据 可以加where条件
select A.*,d from A left join B on A.b=B.b where B.b is not null
展开全部
select t1.a,t1.b,t2.a,t2.c from talbe1 t1 left join table2 t2 on t1.a=t2.a
where t2.a is null
这句SQL的意思为,从table1和table2两个表查询,其中t1.a为table1的主键,t2.a为外键,
当外键t2.a不存在,则对应t1的资料显示出来。
where t2.a is null
这句SQL的意思为,从table1和table2两个表查询,其中t1.a为table1的主键,t2.a为外键,
当外键t2.a不存在,则对应t1的资料显示出来。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
表A:id, p1(与B关联), p2(与B关联)
表B:id
B有一条记录
id p
1 s
A有一条记录
id p1 p2
1 1 NULL
怎么查A这条记录,级联查询,查询结果
A.id p1.id p1.p p2.id p2.p
1 1 s NULL NULL
select a.id, p1.id, p1.p, p2.id, p2.p
from a left join b p1 on a.p1=p1.id left join b p2 on a.p2=p2.id
表B:id
B有一条记录
id p
1 s
A有一条记录
id p1 p2
1 1 NULL
怎么查A这条记录,级联查询,查询结果
A.id p1.id p1.p p2.id p2.p
1 1 s NULL NULL
select a.id, p1.id, p1.p, p2.id, p2.p
from a left join b p1 on a.p1=p1.id left join b p2 on a.p2=p2.id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select A.id , p1.id , p1.p , p2.id , p2.p
from A left join B
on A.p1=B.id
from A left join B
on A.p1=B.id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SELECT A.id,b.id,a.p1,a.p2,b.p FROM 表A a
inner join 表B b on a.id=b.id
group by A.id,b.id,a.p1,a.p2,b.p
inner join 表B b on a.id=b.id
group by A.id,b.id,a.p1,a.p2,b.p
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询