因为我很生气,有时我以前问过错误的问题。现在这就是我想要完成的。
我试图从中获取值user.id = 1
以及关注的用户的值user.id = 1
。
但我醚得到的结果user.id 1
或在这种情况下跟随following.follow_id = 2
。有任何想法吗 ?
我创建了一个用于显示的 SQLfiddle。如您所见,我得到的唯一结果是来自 user_one。
http://sqlfiddle.com/#!2/6a39f/1
SELECT user.email,
user.username,
tweets.message,
tweets.date,
userdetails.profile_img,
userdetails.firstname,
userdetails.lastname,
following.id, following.user_id,
following.follow_id
FROM user
JOIN userdetails ON user.id = userdetails.user_id
JOIN tweets ON userdetails.user_id = tweets.user_id
LEFT JOIN following ON user.id = 1
WHERE following.user_id = 1
表:
推文
用户 ID | 编号 | 日期 | 信息
用户
编号 | 电子邮件 | 密码 | 用户名
用户详情
编号 | 名字 | 姓氏 | profile_img | 用户 ID | 关于
下列的
编号 | 用户 ID | follow_id
在这种情况下,下表具有价值
user_id = 1 and follow_id = 2
概括 。
User_id = 1 is following follow_id = 2
但我只从两者中得到结果,user_id = 1
而不是从两者中得到结果。谢谢。
基本上我试图结合这两个查询。
查询被关注用户的结果。
SELECT user.email,
user.username,
tweets.message,
tweets.date,
userdetails.profile_img,
userdetails.firstname,
userdetails.lastname,
following.id, following.user_id,
following.follow_id
FROM user
JOIN userdetails ON user.id = userdetails.user_id
JOIN tweets ON userdetails.user_id = tweets.user_id
JOIN following ON following.follow_id
WHERE following.follow_id = tweets.user_id AND following.user_id = '1' ORDER BY tweets.date DESC
以及获取用户 1 值的查询
SELECT user.email,
user.username,
tweets.message,
tweets.date,
userdetails.profile_img,
userdetails.firstname,
userdetails.lastname
FROM user
JOIN userdetails ON user.id = userdetails.user_id
JOIN tweets ON userdetails.user_id = tweets.user_id
WHERE user.id = '1' ORDER BY tweets.date DESC