Met een Join-query als deze heb ik dezelfde resultaten en het werkt :) ik weet nog steeds niet waarom de geneste queries 40-50 seconden duurden. Met dank aan gebruiker Dibakar Paul die me heeft geholpen!
$sql1 = "Select distinct title, artist, album
from songs where id not in(Select distinct song.id
from songs song inner join playlist playlist
on playlist.song_id=song.id
inner join playlists playlists
on playlists.playlist_id=playlist.playlist_id
and playlists.name = '$playlist_name')";
$sql2 = "Select distinct song.title, song.artist, song.album
from songs song inner join playlist playlist
on playlist.song_id=song.id
inner join playlists playlists
on playlists.playlist_id=playlist.playlist_id
and playlists.name = '$playlist_name'";