gpt4 book ai didi

MySQL从多个表连接

转载 作者:行者123 更新时间:2023-11-29 14:18:39 26 4
gpt4 key购买 nike

我有3张 table

friends
posts
members

friends
========
id, to, from (user_id's), status

there are 3 status's -1 = denied, 0 = no response/new, 1 = accepted



posts
=======
p_id, user_id (same as member_id), text


members
========
member_id, f_name, l_name

如果想从“帖子”中的帖子中选择文本,请将其与“成员(member)”中的用户名结合起来,并且仅显示 user_id 位于“ friend ”表中的帖子。

我想知道是否可以完成,我在查询中尝试了 IN () 语句,该语句有效,但它在 IN () 内生成 csv 时产生了一个新问题。我更愿意通过mysql来做到这一点,但如果不能做到这一点,我可以使用一个全局变量来存储 friend 数据(但这样它就不会是最新的,或者当用户获得新 friend 时必须刷新)。

最佳答案

据我了解,您想要查找所有 friend 的姓名和帖子,而不是 friend 表中的任何 friend ......?

您自己的用户 ID 位于 $myId 中,这应该可以做到(最新帖子优先);

编辑:添加了好友的状态检查

SELECT m.f_name, m.l_name, p.`text`
FROM members m
JOIN posts p
ON m.member_id = p.user_id
JOIN friends f
ON f.`to` = m.member_id OR f.`from` = m.member_id
WHERE (f.`from` = $myId OR f.`to`= $myId)
AND f.`status` = 1 AND m.member_id <> $myId
ORDER BY p.p_id DESC

关于MySQL从多个表连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12154460/

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