导读:有表1:如下内容表2:如下内容 idinfoidvalue 1a110 2b230 3c 4d 想得到 idvalue 110//表2中存在 220//表2中存在 30//..
有 表1:如下内容 表2: 如下内容
id info id value
1 a 1 10
2 b 2 30
3 c
4 d
想得到
id value
1 10 //表2中存在
2 20 //表2中存在
3 0 //表2中不存在
4 0 //表2中不存在
是否可以使用一条sql语句来解决,而不必先从表1中得到id,再在表2中查找是否有该条记录,如果有就直接读取出来,没有则赋值为0
select 表1.id,isnull(value,0) from 表1
left join 表2
on 表1.id=表2.id
select a.id,isnull(b.value,0) from 表1 a
left join 表2 b
on a.id=b.id
id info id value
1 a 1 10
2 b 2 30
3 c
4 d
想得到
id value
1 10 //表2中存在
2 20 //表2中存在
3 0 //表2中不存在
4 0 //表2中不存在
是否可以使用一条sql语句来解决,而不必先从表1中得到id,再在表2中查找是否有该条记录,如果有就直接读取出来,没有则赋值为0
复制代码 代码如下:
select 表1.id,isnull(value,0) from 表1
left join 表2
on 表1.id=表2.id
复制代码 代码如下:
select a.id,isnull(b.value,0) from 表1 a
left join 表2 b
on a.id=b.id
更多文章请关注《万象专栏》
转载请注明出处:https://www.wanxiangsucai.com/read/cv132869
话题推荐: #一个多表查询的SQL语句#