為了從兩個或多個表中選出數據,我們一般使用表連接來實現這個功能。
album(asin, title, artist, price, release, label, rank)曲目表:每張專輯中的曲目(因為是音樂CD,所以也可叫歌曲)的詳細信息。
track(album, dsk, posn, song)SQL短語
FROM album JOIN track ON album.asin=track.album表示連接album和track表。
SELECT title, artist FROM album JOIN track ON (album.asin=track.album) WHERE song = 'Alison'顯然,歌名、專輯名稱和作者分別在兩個表中,必需使用表連接來完成這個查詢。
SELECT artist FROM album JOIN track ON (asin=album) WHERE song = 'Exodus'用作連接的兩個字段asin,album因為在兩個表中都是惟一的,所以不一定要加表名作為前綴。但為了方便理解,建議使用前綴,形如:album.asin=track.album
SELECT song FROM album JOIN track ON (asin=album) WHERE title = 'Blur'如果我們把 album JOIN track ON (asin=album) 看成一個臨時表的話,join的概念就很好理解了。