我正在创建一个包含4个表的数据库(目前)
表:Activity
,Follow
,Likes
,Users
我设法让活动Feed与用户关注的人一起工作,但我正在努力尝试让Likes表工作。
是否可以在查询中创建一个额外的列来检查相似的表格,并在用户之前喜欢该帖子时显示true
或false
。
这就是我当前的查询。
INSERT INTO Likes (likeID, Usr_ID, activityID) VALUES (NULL, 1, 14);
UPDATE activity A SET A.likes = A.likes+1
WHERE (A.Activity_ID = (SELECT activityID FROM Likes WHERE Usr_ID = '1' ORDER BY likeID DESC LIMIT 1));
UPDATE users U SET U.likes = U.likes+1
WHERE (U.User_ID = (SELECT UsrID FROM activity WHERE activity_ID = (SELECT activityID FROM Likes WHERE Usr_ID = '1' ORDER BY likeID DESC LIMIT 1)))
编辑:这是我喜欢的帖子时的代码。
这是我的Feed代码
SELECT Activity_ID, UsrID, firstName, lastName, Date, Time, Details, Likes, Image FROM activity AS a
INNER JOIN follow AS f1
ON a.UsrID = f1.followingID
INNER JOIN users as u
ON a.UsrID = u.User_ID
WHERE f1.followerID = 1
编辑:尝试清理一些我正在尝试做的事情。从来没有很好地解释过自己。
我正在尝试为每个用户获取我的活动Feed,这是我已经实现的。我的代码查看了关注者表,查找当前用户关注的用户,并仅显示以下用户提要。我想要做的是获取输出以显示当前用户喜欢的帖子。我已经创建了一个表来显示用户喜欢哪些帖子,但我仍然坚持如何使用上面的代码输出它。