by IanRTaylorUK » Tue Jul 15, 2025 7:27 am
Alternatively, pop the MM.DB "tables" into your chosen database software and write / run a little SQL query. This is a starting point... It needs a little refining as ALL my "Cnt" are 1 as duplicates are due to essential the same track in different albums by the same artist!
SELECT
Playlists.IDPlaylist,
Playlists.ParentPlaylist,
Playlists.PlaylistName,
PlaylistSongs.IDPlaylistSong,
PlaylistSongs.IDSong,
Songs.SongTitle,
Songs.AlbumArtist,
Songs.Album,
Count(Songs.SongTitle) AS Cnt
FROM
(
Playlists
INNER JOIN PlaylistSongs ON Playlists.IDPlaylist = PlaylistSongs.IDPlaylist
)
INNER JOIN Songs ON PlaylistSongs.IDSong = Songs.ID
GROUP BY
Playlists.IDPlaylist,
Playlists.ParentPlaylist,
Playlists.PlaylistName,
PlaylistSongs.IDPlaylistSong,
PlaylistSongs.IDSong,
Songs.SongTitle,
Songs.AlbumArtist,
Songs.Album
HAVING
(((Playlists.ParentPlaylist) = 0))
ORDER BY
Songs.SongTitle;
Alternatively, pop the MM.DB "tables" into your chosen database software and write / run a little SQL query. This is a starting point... It needs a little refining as ALL my "Cnt" are 1 as duplicates are due to essential the same track in different albums by the same artist!
SELECT
Playlists.IDPlaylist,
Playlists.ParentPlaylist,
Playlists.PlaylistName,
PlaylistSongs.IDPlaylistSong,
PlaylistSongs.IDSong,
Songs.SongTitle,
Songs.AlbumArtist,
Songs.Album,
Count(Songs.SongTitle) AS Cnt
FROM
(
Playlists
INNER JOIN PlaylistSongs ON Playlists.IDPlaylist = PlaylistSongs.IDPlaylist
)
INNER JOIN Songs ON PlaylistSongs.IDSong = Songs.ID
GROUP BY
Playlists.IDPlaylist,
Playlists.ParentPlaylist,
Playlists.PlaylistName,
PlaylistSongs.IDPlaylistSong,
PlaylistSongs.IDSong,
Songs.SongTitle,
Songs.AlbumArtist,
Songs.Album
HAVING
(((Playlists.ParentPlaylist) = 0))
ORDER BY
Songs.SongTitle;