currently im working on a database for music and want to filter all the playlists with more than 5 songs and an average rating of 3.
I have 4 tables:
rating (ratingID, rating)
playlists (playlistID, playlistName)
rating_for_playlists (rating_ratingID, playlists_playlistID)
songs_in_playlist (songs_songID, playlists_playlistID)
my idea is the following code
SELECT playlistID, playlistName
FROM playlists
JOIN ratings_for_playlists ON playlistID = playlists_playlistID
JOIN rating ON playlists_playlistID = ratID
JOIN (
SELECT playlistID, COUNT(songs_songID) AS song_count
FROM songs_in_playlists
GROUP BY playlistID
) songs_in_playlists ON playlistID = playlists_playlistID
GROUP BY playlistID, play_name
HAVING AVG(rating) >= 3 AND song_count > 5;
sadly I always get this error code:
1054 unknown column “playlistID” in “field list”.
Luke is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.