浅析数据库中内连接、全连接与左右连接的不同点

数据库
在这里,我们将讨论的是联合查询的比较。主要是针对内连接、全连接与左右连接的不同点,对比的环境是两个表的联合查询。

我们经常用到2个表的联合查询,有时候用到内连接,全连接,以及左右连接,是不是很复杂呢?下面给演示一下他们的区别

首先有以下2个表:

  1. CREATE TABLE weather  
  2. (  
  3.   city character varying(80) NOT NULL,  
  4.   temp_lo integer NOT NULL,  
  5.   temp_hi integer NOT NULL,  
  6.   prcp real,  
  7.   date date 
  8. )  
  9. WITH (  
  10.   OIDS=FALSE 
  11. );  
  12. ALTER TABLE weather OWNER TO postgres;  
  13. -----------------------------------------------------------  
  14.  
  15. REATE TABLE cities  
  16. (  
  17.   "name" character varying(80) NOT NULL,  
  18.   "location" point  
  19. )  
  20. WITH (  
  21.   OIDS=FALSE 
  22. );  
  23. ALTER TABLE cities OWNER TO postgres; 

让我们想看看里面的数据吧

下面就开始内连接了。不用太多的说明,看图片就知道怎么回事了

看到了吗,inner 和 select * from weather,cities where city =name 输出一样的,都是一一对应的输出。这个我喜欢!

下面在看看全连接,左右连接的图片

可以看得出来,全连接呢,就是2个表的所有数据都被列举出来,如果他表中没有对于的数据呢,就补空。

左右连接为全连接的子集(我是这么认为的)左连接以前表为基准,后表没有的数据补控

右连接已后表为基准,前表没有的就补空。

原文链接:http://www.cnblogs.com/yongjun-zou/archive/2010/08/22/1805870.html

【编辑推荐】

  1. MySQL左连接、右连接和内连接详解
  2. SQL Server数据库连接,Web.config的正确配置
  3. Oracle左连接的实例演示
  4. 如何在NetBeans中连接MySQL数据库
  5. MySQL索引分类和各自用途
责任编辑:彭凡 来源: 博客园
相关推荐

2009-08-12 14:59:09

C#和Java不同点

2015-08-21 13:50:49

Oracle连接

2009-07-28 17:36:21

ASP.NET数据库连

2010-08-26 11:48:30

DB2外连接交叉连接

2009-09-22 13:14:29

Hibernate gHibernate l

2009-07-29 09:12:31

ASP.NET数据库连

2010-06-07 15:24:34

Java连接MYSQL

2009-06-24 07:55:36

Hibernate不同SQL方言

2011-06-21 15:11:04

QT 数据库

2010-04-08 18:54:32

Oracle数据库

2009-07-20 15:14:44

iBATIS.NET连

2011-08-03 14:02:02

数据库连接ACCESS

2010-05-05 15:45:52

Oracle数据库

2009-07-06 15:57:56

获取数据库连接JSP

2009-07-29 09:33:14

ASP.NET数据库连

2011-03-10 14:09:28

C#数据库

2009-07-22 10:53:42

MySQL左连接

2009-08-25 16:01:32

C#.NET连接数据库

2020-09-22 15:56:31

Java

2009-09-25 13:18:15

Hibernate数据
点赞
收藏

51CTO技术栈公众号