Mit einer Join-Abfrage wie dieser habe ich die gleichen Ergebnisse und es funktioniert :) Ich weiß immer noch nicht, warum die verschachtelten Abfragen bis zu 40-50 Sekunden gedauert haben. Danke an den Benutzer Dibakar Paul, der mir geholfen hat!
$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'";