官术网_书友最值得收藏!

第10章 SQL聯接

考試目標

本章學習內容:

● 061.6.1 使用同等聯接和非同等聯接編寫SELECT語句訪問多個表的數據

● 061.6.2 使用自聯接將表聯接到自身

● 061.6.3 使用外聯接查看不滿足聯接條件的數據

● 061.6.4 生成兩個或者多個表的笛卡爾乘積

關系理論的3個支柱是選擇、投影和聯接。本章重點討論聯接的實際實現方式。使用聯接可以將不同表或視圖的行相互聯系起來。聯接支持暗示數據庫表中存儲數據的方式。許多數據模型(例如第三范式或者星形模式)已經開始使用這種特性。

有幾種方法可以聯接表。最常見的方法稱為同等聯接,該聯接依據列值或者表達式的相等性將一行與另一個表中的一行或者多行關聯起來,還可以使用非同等聯接來聯接表。在這種聯接中,行與另一個表中的一行或者多行關聯起來,前提是這些行的列值在由不等于運算符確定的范圍之內。

另一種不常見的方法是將這些行與同一個表中的其他行關聯起來。這種關聯建立在列之上,這些列相互之間有邏輯關系以及層次結構關系。這種聯接稱為自聯接。當執行同等聯接和非同等聯接時,會排除包含空值或者公共聯接列中具有不同條目的行。如果有必要,可以使用外聯接來獲得單行或者孤立行。

當來自一個表的所有行聯接到另一個表中的所有行時,就會形成交叉聯接或者笛卡爾乘積。這種聯接通常是遺漏聯接條件或者聯接條件不充足的結果,但有時也是故意為之。

主站蜘蛛池模板: 平原县| 江门市| 类乌齐县| 沂源县| 渝中区| 双城市| 德庆县| 米林县| 邛崃市| 宜宾市| 博湖县| 雷州市| 炎陵县| 信阳市| 汪清县| 万州区| 阜南县| 温州市| 西青区| 武陟县| 同江市| 潜山县| 礼泉县| 荥阳市| 淮北市| 伊宁市| 灌云县| 江城| 杂多县| 长治市| 沾化县| 黄平县| 柳林县| 平邑县| 巩留县| 女性| 广西| 铁岭县| 陆丰市| 日土县| 芮城县|