站长资源数据库

一个多表查询的SQL语句

整理:jimmy2024/5/4浏览2
简介有 表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中存
有 表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