gpt4 book ai didi

PHP mySQL 显示好友列表中的帖子

转载 作者:行者123 更新时间:2023-11-29 23:16:18 24 4
gpt4 key购买 nike

首先,我想说,我不太擅长解释技术问题,但我会尝试:)

我正在尝试做一些像 Facebook 墙这样的事情。我有 4 张 table 。

  1. 用户
  2. 用户图片
  3. 好友列表
  4. 分享帖子

我想在用户的主页上显示他/她的好友帖子。我搜索并找到了一些解决方案并应用于我的应用程序。但我正在尝试寻找 SQL 查询的替代方法。因为我使用了子查询,也许没有这个也可以实现。

这是数据库:http://sqlfiddle.com/#!2/bbacd

获取结果的SQL代码:

SELECT DISTINCT share.*, member.*, picture.file
FROM friend
LEFT JOIN share ON share.wall_owner_id = friend.friend_id
LEFT JOIN picture ON picture.member_id = share.wall_owner_id
LEFT JOIN member ON member.member_id = share.wall_owner_id
WHERE friend_id IN (SELECT friend_id FROM friend WHERE member_id = 'MEMBER.ID')
OR share.writed_by_id = 'MEMBER.ID'

MEMBER.ID = 登录用户的 ID。

友谊设计作为跨系统工作。如果有人接受好友请求(表未添加到 sqlfiddle),则两者都以好友身份写入数据库,例如 2, 8 和 8, 2。这样做是好方法吗?

非常感谢。

友善。

最佳答案

无需额外的连接,您绝对可以做到这一点。仍然不确定我是否满足了要求。如果您想查看他的 friend 或他在任何墙上发布的所有内容,这种查询应该有效。基本上,您只需选择那些拥有 MEMBER.ID 为好友或本身就是 MEMBER.ID 的人。

SELECT DISTINCT share.share_id, share.status_text
FROM friend
JOIN share ON share.writed_by_id = friend.member_id
JOIN picture ON picture.member_id = share.wall_owner_id
WHERE friend.friend_id = 2 OR friend.member_id = 2

关于PHP mySQL 显示好友列表中的帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27770084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com