sql >> Base de Datos >  >> Database Tools >> phpMyAdmin

¿Cómo lograr el mismo resultado usando Mysql Joins en lugar de subconsultas anidadas?

Puede cambiar su consulta como,

Para todas las canciones de la base de datos excepto las de tu lista de reproducción

$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')";

Los que están en tu lista de reproducción,

$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'";