2016-09-23 42 views
-1

我發現了一個SQL語法錯誤「圍繞5號線」以下的代碼..需要幫助的小斑點查詢一個SQL語法錯誤

SELECT artists.name, albums.title, genres.genre 
    FROM artist_album 
     JOIN artists ON artist_album.artist_id = artists.id 
     JOIN albums ON artist_album.album_id = albums.album_id 
    FROM album_genre 
     JOIN genres ON album_genre.genre_id = genres.genre_id 
     WHERE genres.genre = 'Pop' OR genres.genre = 'Rock' 

我想找到是所有藝術家發佈'Rock'或'Pop'專輯的數據庫。查詢應返回的藝術家名稱,專輯名稱和專輯風格..

我的表是:

albums 
    album_id 
    released 
    title 

artist 
    id 
    name 

genres 
    genre_id 
    genre 

album_genre 
    album_id 
    genre_id 

artist_album 
    album_id 
    artist_id 

我是很新的SQL,所以我敢肯定,我做錯了什麼事我我沒有意識到..但在挖掘了一下互聯網之後,我看不到我可能在語法上做錯了什麼。

任何幫助/建議將不勝感激,謝謝!

+0

有兩個 「從」 S ... – alfasin

回答

1

看起來應該是

JOIN album_genre ON album_genre.album_id = albums.album_id 

,而不是

FROM album_genre 
+0

的..實際上很有意義..我不知道我在想什麼:|謝謝Jasen! – swimmingpoole

0

這是你的SQL:

SELECT artists.name, albums.title, genres.genre 
From artists join artist_album On artist_album.artist_id = artists.id 
join albums ON artist_album.album_id = albums.album_id 
join album_genre ON album_genre.album_id =albums.album_id 
JOIN genres ON album_genre.genre_id = genres.genre_id 
     WHERE genres.genre = 'Pop' OR genres.genre = 'Rock'