当前位置: 首页 > 图文教程 > 数据库 > 数据库技巧 > 一个多表查询的SQL语句

数据库技巧
SQL中代替Like语句的另一种写法
Sql Server下数据库链接的使用方法
如何取得一个表的所有字段名用逗号分割
使用SQL Mail收发和自动处理邮件中的扩展存储过程简介
MySQL中的mysqldump命令使用详解
SQL 查询语句积累
SQL server 2005的表分区
关于ADOX的相关知识
如何让SQL运行得更快
ACCESS库转SQLSERVER数据库的注意事项
数据库设计技巧[转]
iwms access与sql版的安装与转换
[转载]让SQL运行得更快
[数据库] 通用分页存储过程
Access数据库升级为SQL数据库的注意事项和方法
Win2003系统安装SQL Sever2000后1433端口未开放的解释
SQL SERVER 与ACCESS、EXCEL的数据转换
Access转MS SqlServer的注意事项
数据库的设计方法、规范与技巧
数据库设计技巧奉送了

数据库技巧 中的 一个多表查询的SQL语句


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 104 ::
收藏到网摘: n/a

有 表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