diff --git a/src/bin/principal/principal_controller.c b/src/bin/principal/principal_controller.c index b372b6e..d81396c 100644 --- a/src/bin/principal/principal_controller.c +++ b/src/bin/principal/principal_controller.c @@ -194,11 +194,11 @@ _ejy_principal_controller_create_playlist(grn_controller_t *controller) model = ejy_playlist_model_new( "SELECT files.id, path, title, trackno, rating, playcnt, " "audio_albums.name, audio_genres.name, audio_artists.name " - "FROM files, audios, audio_albums, audio_genres, audio_artists " - "WHERE files.id = audios.id " - "AND audio_albums.id = audios.album_id " - "AND audio_genres.id = audios.genre_id " - "AND audio_artists.id = audio_albums.artist_id"); + "FROM files join audios on files.id = audios.id " + "LEFT JOIN audio_albums on audios.album_id = audio_albums.id " + "LEFT JOIN audio_genres on audios.genre_id = audio_genres.id " + "LEFT JOIN audio_artists on audios.artist_id = audio_artists.id"); + c = (struct ejy_principal_controller *)controller; c->playlist = ejy_playlist_controller_new(model, controller); if (!c->playlist)