【发布时间】:2013-06-12 05:09:32
【问题描述】:
想象它是一个音乐网站,我有 1000 首歌曲。用户可以“喜欢”歌曲,这使用 memberID 和 songID 存储在查找表中。
然后我想在所有歌曲列表的顶部显示特定用户的收藏夹。
SELECT s.*, s.songID theSongID, f.*
FROM su_songs AS s
left JOIN su_member_favourites_lookup AS f
ON f.songID = s.songID
ORDER by f.songID IS NULL, s.songTitle ASC
...用于在顶部显示 所有 收藏夹。但我只想显示登录用户的收藏夹,然后显示下方的所有其他歌曲
SELECT s.*, s.songID theSongID, f.*
FROM su_songs AS s
left JOIN su_member_favourites_lookup AS f
ON f.songID = s.songID
WHERE memberID = " . $memberID . "
ORDER by f.songID IS NULL, s.songTitle ASC
...如果我添加 WHERE 子句来匹配用户,它只会显示用户的最爱,而忽略其余的歌曲。
【问题讨论】:
-
@CORRUPT。答案可能相同,但问题却大不相同。