首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 教程 (6):SELECT 內聯接 (INNER JOIN) 入門 — 專輯與曲目表關聯實例

     編輯:關於SqlServer

內聯接 (INNER JOIN) 只回傳雙邊關聯條件匹配的列。本文以音樂專輯與曲目表為例,示範基本語法、別名使用、以及三種常見查詢場景:反查專輯、反查歌手、列出專輯曲目。

資料結構

  • album(asin, title, artist, price, release, label, rank):asin 為專輯唯一鍵
  • track(album, dsk, posn, song):album 關聯 album.asin

基本語法

FROM album JOIN track ON album.asin = track.album

產生虛擬表,含 album 所有欄位 + track 所有欄位。關聯欄位雙邊唯一時可省略表前綴,但建議保留前綴提升可讀性。

三大實戰範例

1. 反查專輯:歌名 'Alison' 屬於哪張專輯、誰演唱?

SELECT title, artist
FROM album JOIN track ON album.asin = track.album
WHERE song = 'Alison';

2. 反查歌手:誰演唱了 'Exodus'?

SELECT artist
FROM album JOIN track ON album.asin = track.album
WHERE song = 'Exodus';

3. 列出專輯曲目:'Blur' 專輯有哪些歌?

SELECT song
FROM album JOIN track ON album.asin = track.album
WHERE title = 'Blur';

核心概念

將 JOIN ... ON 視為產生一個「臨時寬表」,後續 WHERE/SELECT 直接針對此寬表操作,極大簡化多表查詢邏輯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved