淺析資料庫中內串連、全串連與左右串連的不同點

來源:互聯網
上載者:User

我們經常用到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個表的所有資料都被列舉出來,如果他表中沒有對於的資料呢,就補空。

左右串連為全串連的子集我是這麼認為的)左串連以前表為基準,後表沒有的資料補控

右串連已後表為基準,前表沒有的就補空。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.