亚洲区国产区激情区无码区,国产成人mv视频在线观看,国产A毛片AAAAAA,亚洲精品国产首次亮相在线

SQL 聯(lián)表查詢(Join)

在本教程中,您將學(xué)習(xí)如何聯(lián)接兩個(gè)表以獲取組合數(shù)據(jù)。

SQL連接基礎(chǔ)

到目前為止,您所看到的所有查詢都集中在一個(gè)表上。但是在現(xiàn)實(shí)生活中,您經(jīng)常需要一次查詢兩個(gè)或多個(gè)表并帶來合并的結(jié)果集。這在技術(shù)上稱為聯(lián)接,因?yàn)樗婕案鶕?jù)表之間的公共字段(外鍵)聯(lián)接不同的表以創(chuàng)建數(shù)據(jù)的新視圖。

為了容易理解這一點(diǎn),讓我們來看看下面employeesdepartments表。在這里,employees表的dept id列是departments表的外鍵。因此,可以將這兩個(gè)表連接起來,得到組合的數(shù)據(jù)。

+--------+--------------+------------+---------+
| emp_id | emp_name     | hire_date  | dept_id |
+--------+--------------+------------+---------+
|      1 | Ethan Hunt   | 2001-05-01 |       4 |
|      2 | Tony Montana | 2002-07-15 |       1 |
|      3 | Sarah Connor | 2005-10-18 |       5 |
|      4 | Rick Deckard | 2007-01-03 |       3 |
|      5 | Martin Blank | 2008-06-24 |    NULL |
+--------+--------------+------------+---------+

+---------+------------------+
| dept_id | dept_name        |
+---------+------------------+
|       1 | Administration   |
|       2 | Customer Service |
|       3 | Finance          |
|       4 | Human Resources  |
|       5 | Sales            |
+---------+------------------+
表: employees
表: departments

注意:為了聯(lián)接表,用于聯(lián)接表的列的數(shù)據(jù)應(yīng)該匹配,而不必匹配列名。

聯(lián)結(jié)類型

聯(lián)接表時(shí),在查詢中創(chuàng)建的聯(lián)接類型會(huì)影響結(jié)果集中顯示的行。您可以創(chuàng)建以下類型的聯(lián)接:

內(nèi)聯(lián)結(jié)(Inner join)

聯(lián)接僅返回兩個(gè)聯(lián)接表中都具有匹配項(xiàng)的行。例如,您可以將employees和departments表聯(lián)接在一起,以創(chuàng)建一個(gè)顯示每個(gè)雇員的部門名稱的結(jié)果集。在內(nèi)部聯(lián)接中,沒有部門信息的雇員不包括在結(jié)果集中,沒有雇員的部門也不會(huì)包括在結(jié)果集中。

在下一章中,我們將學(xué)習(xí)有關(guān)內(nèi)部聯(lián)接的更多信息。

外聯(lián)結(jié)(Outer join)

外聯(lián)接是內(nèi)部聯(lián)接的擴(kuò)展。 即使外聯(lián)接在聯(lián)接表中沒有相關(guān)行,外聯(lián)接也會(huì)返回這些行。 外聯(lián)接共有三種類型:左聯(lián)接(left join),右聯(lián)接(right join)和完全聯(lián)接(full join)。

我們將在后面的章節(jié)中詳細(xì)了解外部聯(lián)接的這些變體。

交叉聯(lián)接(Cross join)

交叉聯(lián)接是沒有聯(lián)接條件的聯(lián)接。一個(gè)表的每一行與另一表的每一行合并。這種類型的結(jié)果集稱為笛卡爾乘積或叉積。例如,employeesdepartments表之間的交叉連接產(chǎn)生了一個(gè)結(jié)果集,其中每個(gè)可能的雇員/部門組合都有一行。

在接下來的章節(jié)中,我們將學(xué)習(xí)有關(guān)交叉連接的更多信息。