專業只做數據庫實訓和認證的品牌機構

微信公眾號新浪微博
免費咨詢電話:400-0909-964
當前位置: 網站首頁 > MySQL培訓 > MySQL課程 > MySQL培訓教程:select全連接查詢

MySQL培訓教程:select全連接查詢

文章來源: 更新時間:2016/7/19 16:54:10

在線老師點擊咨詢:

最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!

我要咨詢

MySQL培訓教程:select全連接,在檢索時指定多個表,將每個表用都好分隔,這樣每個表的數據行都和其他表的每行交叉產生所有可能的組合,這樣就是一個全連接。所有可能的組和數即每個表的行數之和。

那么觀察下面的檢索的結果:

MySQL> SELECT * FROM first,last;

+------+------------+------+-----------+

| id | first_name | id | last_name |

+------+------------+------+-----------+

| 1 | Tom | 2 | Stone |

| 2 | Marry | 2 | Stone |

| 3 | Jarry | 2 | Stone |

| 1 | Tom | 3 | White |

| 2 | Marry | 3 | White |

| 3 | Jarry | 3 | White |

| 1 | Tom | 4 | Donald |

| 2 | Marry | 4 | Donald |

| 3 | Jarry | 4 | Donald |

+------+------------+------+-----------+

你可以看到輸出的結果集中共有3×3=9 行,這就是全連接的結果。

你也可以這樣使用SQL語句:

MySQL> SELCT first.*,last.* FROM first,last;

輸出結果與上面的例子相同,并無二致。記錄集的輸出的排序是以FROM子句后的表的順序進行,即先排列位置靠前的表,即使你改變記錄集中列的顯示順序,例如下面的例子:

MySQL> SELECT last.*,first.* FROM first,last;

+------+-----------+------+------------+

| id | last_name | id | first_name |

+------+-----------+------+------------+

| 2 | Stone | 1 | Tom |

| 2 | Stone | 2 | Marry |

| 2 | Stone | 3 | Jarry |

| 3 | White | 1 | Tom |

| 3 | White | 2 | Marry |

| 3 | White | 3 | Jarry |

| 4 | Donald | 1 | Tom |

| 4 | Donald | 2 | Marry |

| 4 | Donald | 3 | Jarry |

+------+-----------+------+------------+

上面的例子是兩個非常小的表的例子,如果是幾個非常大的表的全連接,例如,兩個行數分別為1000的表,這樣的連接可以產生非常大的結果集合1000×1000=100萬行。而實際上你并不需要這么多行的結果,通常你需要使用一個WHERE從句來限制返回的記錄集的行數:

MySQL> SELECT * FROM first,last WHERE first.id= last.id;

+------+------------+------+-----------+

| id | first_name | id | last_name |

+------+------------+------+-----------+

| 2 | Marry | 2 | Stone |

| 3 | Jarry | 3 | White |

+------+------------+------+-----------+

本文地址:http://www.erickasouza.com/mysql/kecheng/12516807476.html 轉載請注明!


在線預約 搶先報名 獲取課程排期

Oracle培訓機構

金牌講師<>

冉乃綱-老師CUUG金牌講師
冉老師 CUUG金牌講師 Oracle及RedHat高級講師、Unix/Linux 資深專家...[詳細了解老師]

免費咨詢上課流程 客服在線中

陳衛星-老師CUUG金牌講師
陳老師 CUUG金牌講師 精通Oracle管理、備份恢復、性能優化 11年Ora...[詳細了解老師]

免費咨詢上課流程 客服在線中

選學校如何選擇適合自己的學校

CUUG -CHINA UNIX USER GROUP,是國際UNIX組織UNIFORUM的中國代表,是國內悠久的專業UNIX培訓機構,被譽為中國UNIX 的搖籃。多年來,以提高教學質量為本,強調素質教育,積極引進、消化國外的新技術,有效的結合中國....[詳情]

一站式服務(從入學到就業一幫到底)

入學

學習

就業

實操

食宿
關閉
海淀校區:北京市海淀區紫竹園路88號紫竹花園D座703(CUUG)
課程咨詢:010-59426307 010-59426319 400-0909-964
企業服務:139 1050 4818(劉經理)
部分信息來源于網絡,如有錯誤請聯系指正!
微信:聞老師
微信:于老師
版權所有@北京神腦資訊技術有限公司 (CUUG,中國UNIX用戶協會) Copyright 2016 ALL Rights Reserved 京ICP備11008061號-1