我希望在允许用户相互关注的系统中实现类似 Twitter 的“关注谁”的建议功能。我使用如下表格跟踪这些订阅:
CREATE TABLE `subscriptions` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`follower_id` int(10) unsigned NOT NULL,
`following_id` int(10) unsigned NOT NULL,
`enabled` tinyint(1) NOT NULL DEFAULT '0',
)
我正在尝试获取当前用户尚未关注的用户列表。
到目前为止,我已经尝试使用以下查询:
SELECT DISTINCT u.id, u.name, s.follwer_id, s.enabled
FROM users u
LEFT JOIN subscriptions s ON u.id = s.follwer_id AND s.enabled = 0
WHERE u.id != 2
这个查询最终给了我很多 NULL 和不相关的行。
提前致谢。