sql >> Base de Datos >  >> RDS >> Mysql

Problema de lógica de múltiples tablas de MySQL LEFT JOIN

quieres todas las canciones seleccione de las canciones y realice una combinación izquierda para obtener datos potenciales de otras tablas (ordene por para obtener una mejor representación):

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