資料庫基礎之左串連

來源:互聯網
上載者:User

標籤:

  左外串連就是在等值串連的基礎上加上主表中的未匹配資料。

  今天下午處理一個SQL,通過left outer join(so as right left outer join)的表的關聯方式. 看到這種文法,直覺上反映查詢結果的條數應該是Where之後主表返回的記錄數(下將Where描述前置略去),直到今天下午寫了一個SQL語句,返回的記錄數表總表的比總表的還要多.呐尼!

  覺得有點不可接受,why?參考資料也沒反應整明白是為什麼,尋找了半天資料,也沒明白所以然。

  於是拉旁邊的哥們討論一下,哥們看了一下說,有無考慮過子表記錄有重複的情況!瞬間明白了....

  大概齊也就是這麼個事:

CREATE TABLE a( A INT)CREATE TABLE ab( B INT)INSERT INTO a VALUES(1);INSERT INTO a VALUES(2);INSERT INTO ab VALUES(1);INSERT INTO ab VALUES(1);INSERT INTO ab VALUES(1);SELECT * FROM aSELECT * FROM a LEFT OUTER JOIN  abON (a.a=ab.b)

查詢的結果為: 

  

1 1 1
211
311
42

 

記錄這個事情的主要目的主要是為了說明:在工作的過程中,第一反應的不一定是對的,而當我們自己深陷其中的時候不妨找個局外人幫我們處理一下。是所謂旁觀者清,^_^。在討論的時候還應注意只客觀描述問題,盡量不要把小夥伴們也拉到自己的思維陷井中。

串連的參考資料:http://liuzidong.iteye.com/blog/892319

 

資料庫基礎之左串連

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.