diff --git a/core/src/main/groovy/com/jdbernard/wdiwtlt/db/DbApi.groovy b/core/src/main/groovy/com/jdbernard/wdiwtlt/db/DbApi.groovy index 02a0126..365d6af 100644 --- a/core/src/main/groovy/com/jdbernard/wdiwtlt/db/DbApi.groovy +++ b/core/src/main/groovy/com/jdbernard/wdiwtlt/db/DbApi.groovy @@ -423,7 +423,7 @@ public class DbApi { def whereClauses = [] def newJoin - query.append('SELECT mf.* FROM media_files mf ') + query.append('SELECT DISTINCT * FROM (SELECT mf.* FROM media_files mf ') if (params.artistId || params.playlistId) { joins << (newJoin = [ @@ -501,7 +501,7 @@ public class DbApi { if (orderClauses) query.append(' ORDER BY ').append(orderClauses.join(', ')) - query = query.toString() + query = query.append(') as filtered_sorted_media_files').toString() logger.debug('Selecting media files.\n\tSQL: {}\n\tPARAMS: {}', query, sqlParams) return sql.rows(query, sqlParams).collect {