vuoi tutte le canzoni. seleziona dai brani ed esegui un join sinistro per ottenere potenziali dati da altre tabelle (ordina per per ottenere una rappresentazione migliore):
SELECT a.artist_name, COALESCE(b.album_name, '(no album)'), s.song_name,
FROM songs s
LEFT JOIN artists a
ON s.singer_id = a.singer_id
LEFT JOIN albums b
ON s.album_id = b.album_id AND s.singer_id = b.singer_id
ORDER BY a.artist_name, b.album_id