SQL学习之外部连接

转载 2007年10月10日 19:53:00

inner join(等值连接) 只返回两个表中联结字段相等的行,仅当至少有一个同属于两表的行符合联接条件时,内联接才返回行。   
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录
right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录,对寻找孤儿记录很有用。所谓“孤儿记录”就是那些在主表中没有相关记录的相关表中的记录,孤儿记录是违反引用一致性规则的结果。
on 指定表间联结字段及其关系的等号 "=" 表达式, 返回 true 或 false. 当表达式返回 true 时, 则查询中包含该记录.
!外部连接只能操作已存在于数据库中的数据

MySQL中的外连接示例:


  MySQL>   select   *   from   a1;  
   
  BBB  
  ----------  
  101  
  102  
  103  
  104  
  105   
    
   MySQL>   select   *   from   a2;  
   
  BBB                 CCC  
  ----------   --------------------  
  101  
  102  
  105   
    
   MySQL>   select   *   from   a1 right  join a2   on a1.bbb = a2.bbb;  
   
  BBB                 BBB                 CCC  
  ----------   ----------   --------------------  
  101                 101  
  102                 102  
  105                 105   
    
   MySQL>   select   *   from   a1 left  join a2   on a1.bbb = a2.bbb;    
    
  BBB                 BBB                 CCC  
  ----------   ----------   --------------------  
  101                 101  
  102                 102  
  103  
  104  
  105                 105   
    
   MySQL>

全外连接可以用变相的方法: 2个outer join 来实现
参考:
select * from apples as a
     left outer join oranges as o on a.price = o.price
union
select * from apples as a
     right outer join oranges as o on a.price = o.price 
 

SQL连接查询总结和练习

通过连接运算符可以实现多个表查询。连接是关系数据库模型的主要特点,是它区别于其它类型 数据库管理系统的一个标志。连接可以在SELECT 语句的FROM子句或WHERE子句中建立,在FROM子句中指出连...
  • lingxue1027
  • lingxue1027
  • 2015年04月21日 10:17
  • 16504

SQL 中的左外连接和+号的用法

Oracle 左连接、右连接、全外连接、(+)号作用 Oracle  外连接 (1)左外连接 (左边的表不加限制)        (2)右外连接(右边的表不加限制)  ...
  • pianzif
  • pianzif
  • 2014年04月28日 22:38
  • 6997

详解SQL Server连接(内连接、外连接、交叉连接)

在查询多个表时,我们经常会用“连接查询”。连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志。 什么是连接查询呢?     概念:根据两个表或多个表的列之间的关系,从这些表中...
  • jiuqiyuliang
  • jiuqiyuliang
  • 2013年08月30日 11:42
  • 94096

SQL外部连接

  • 2012年10月27日 18:46
  • 546KB
  • 下载

如何配置SQL2008让其允许C#远程外部连接

  • 2012年01月19日 20:23
  • 1.78MB
  • 下载

linux之SQL语句简明教程---外部连接

之前我们看到的左连接 (left join),又称内部连接 (inner join)。在这个情况下,要两个表格内都有同样的值,那一笔资料才会被选出。那如果我们想要列出一个表格中每一笔的资料,无论它的值...
  • u013018721
  • u013018721
  • 2014年12月15日 17:07
  • 372

SQL SERVER 2012数据库:开启防火墙导致外部无法连接数据库解决办法

SQL SERVER 2012数据库:开启防火墙导致外部无法连接数据库解决办法 将以下代码存为OpenSqlServerPort.bat文件: netsh advfirewall firewall...
  • AMinfo
  • AMinfo
  • 2014年03月18日 17:13
  • 6048

如何配置SQL server,让其允许远程外部连接

最关键原因:windows firewall开启的原因。 添加例外: Windows Vista 和 Windows Server 2008 以及更高版本 ...
  • happymagic
  • happymagic
  • 2013年03月14日 15:31
  • 12817

DB2开发用户定义的例程(SQL和外部例程)

  • 2013年12月11日 18:30
  • 2.64MB
  • 下载

一步步学习SPD2010--第七章节--使用BCS业务连接服务(5)--创建和管理外部列表

一步步学习SPD2010--第七章节--使用BCS业务连接服务(5)--创建和管理外部列表...
  • u012025054
  • u012025054
  • 2014年03月16日 15:26
  • 863
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL学习之外部连接
举报原因:
原因补充:

(最多只允许输入30个字)