我通过脚本将iTunes资料库导入到表格中。该脚本没有捕获任何重复的歌曲标题和艺术家。因此,我有很多重复的歌曲。
trackid song artist tracknum
4628 Title1 StackO 2
6846 YMCA (blank) 11
9043 YMCA (blank) 11
9381 YMCA (blank) 11
9382 Title2 StackO 3
当歌曲,艺术家和tracknum都相同时,我如何编写我的SQL语句以仅返回YMCA(4628)行的第一个“trackid”?它看起来应该是这样......
trackid song artist tracknum
4628 Title1 StackO 2
6846 YMCA (blank) 11
9382 Title2 StackO 3
这是我现在的SQL ...
"SELECT DISTINCT * FROM wp_tracks WHERE title LIKE '%" . $song . "%' AND artist LIKE '%" . $artist . "%'
这让我感到困惑了一段时间。
谢谢。
答案 0 :(得分:5)
SELECT song, artist, tracknum, MIN(trackid) AS first_track_id
FROM wp_tracks
GROUP BY song, artist, tracknum
添加WHERE子句以选择要列出的曲目。
答案 1 :(得分:0)
你必须提到你想成为DISTINCT的列,在你的情况下song
SELECT DISTINCT song FROM wp_tracks
WHERE title LIKE '%" . $song . "%' AND artist LIKE '%" . $artist . "%