一个多表查询的SQL语句

(编辑:jimmy 日期: 2024/11/8 浏览: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