表:
items -> id, userId, tagId, postedOn
itemsTags -> id, name
users -> id, firstName, lastName
usersFriends -> id, userId, friendUserId
系统需要重新构建,目前流程是这样的:
但问题是,我需要按日期排序,稍后按特定日期排序,例如,我想查看今天发布的朋友的所有项目,所以我需要一个执行这4个查询的查询在一个,所以基本上SELECT * FROM usersFriends JOIN items ON userId ...
我无法弄清楚其余部分。
答案 0 :(得分:1)
SELECT F.*, I.*, IT.*
FROM usersFriends UF
LEFT JOIN users F --- friends
ON F.id = UF.friendUserId
LEFT JOIN items I --- items they posted
ON I.userId = UF.friendUserId
LEFT JOIN itemsTags IT --- tags of those items
ON I.tagId = IT.id
WHERE UF.userId = ??
在问号上放置用户的ID。