SQL Server 串連執行個體

來源:互聯網
上載者:User

SQL Server的串連可以大致分為三種:內串連、外串連和交叉串連。

一、內串連(INNER JOIN)

使用比較子進行表間某(些)列資料的比較操作,並列出這些表中與串連條件相匹配的資料行。根據所使用的比較方式不同。內串連又分為三種:

  1. 等值串連
  2. 自然串連
  3. 不等串連三種。

 

二、外串連分(EXTERNAL JOIN)

與內串連不同的是,外串連不只列出與串連條件相匹配的行,而是列出左表(左外串連時)、右表(右外串連時)或兩個表(全外串連時)中所有符合搜尋條件的資料行。外串連分為三種:

  1. 左外串連(LEFT OUTER JOIN或LEFT JOIN)
  2. 右外串連(RIGHT OUTER JOIN或RIGHT JOIN)
  3. 全外串連(FULL OUTER JOIN或FULL JOIN)

 

三、交叉串連(CROSS JOIN)

沒有WHERE 子句,它返回串連表中所有資料行的笛卡爾積,其結果集合中的資料行數等於第一個表中符合查詢條件的資料行數乘以第二個表中符合查詢條件的資料行數。

 

下面選擇部分串連執行個體如下:

假設資料庫有如下關係表:

第一個關係表為投票主表votemaster;第二個為投票者資訊表voter,用於記錄投票人IP、投票時間等資訊。

左右串連,即聯集查詢的結果以哪個表為準,若以左邊的關係表為準則稱之為左串連,若以右邊的關係表為準則稱之為右串連。

1:如:右接連 right join 或 right outer join:

我們以右邊voter表為準,則左表(voteMaster)中的記錄只有當其ID在右邊(voter)中存在時才會顯示出來,如,左邊中ID為3、4、5、6的記錄在右表中沒有相應記錄,所以沒有顯示!

2:如:左串連 left join 或者 left outer join

可見,現在右邊中ID在左邊中存在時才會顯示,當右邊中沒有相應資料時則用NULL代替!

3:全串連 full join 或者 full outer join,為二個表中的資料都出來,這裡示範效果與上一樣!

4:內串連 inner join 或者 join;它為返回欄位ID同時存在於表voteMaster 和 voter中的記錄

5:交叉串連(完全串連)cross join 不帶 where 條件的
沒有 WHERE 子句的交叉聯結將產生聯結所涉及的表的笛卡爾積。第一個表的行數乘以第二個表的行數等於笛卡爾積結果集的大小。(table1和table2交叉串連產生6*3=18條記錄)

等價select vm.id,vm.voteTitle,vt.ip from voteMaster as vm,voter as vt

注意:完全串連顯示的結果一般沒有實際意義,在實際中一般不會出現,也很少使用。

6:自串連。其實,就是關係表串連自己。
如下表:

這是一個部門表,裡面存放了部門及其上層業務,但都放在同一張表中,我們假設現在需要用SQL查詢出各部門及其上層業務!該如何做?

當然,不用自串連也一樣,也可以實現如下:

我們達到預期目的!在這個查詢中使用了一個子查詢完成對上層業務名的查詢。

 

如果使用自串連,那麼結構上感覺會清晰很多。

是不是也同樣完成了功能呢,這裡除了使用自串連外,還使用了左串連,因為省電力沒有上層業務,他是老大,如果使用內串連,就會把這條記錄過濾掉,因為沒有和他匹配的上層業務。
自串連用的比較多的就是對權形結構的查詢!類似上表!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

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.