gpt4 book ai didi

MYSQL合并2个表

转载 作者:行者123 更新时间:2023-11-29 06:06:15 25 4
gpt4 key购买 nike

我有两张 table

参与者:thread_id、participant_id

消息:message_id、thread_id、message_poster_id、消息

提供了 thread_id,如何确保非参与者的人不会读取他们不属于的线程?这在一个查询中是否可能,或者我必须运行一个查询然后使用 php 来说明是否允许它们运行第二个查询来获取消息?

我有两个变量是sessionid 和thread_id。

我的逻辑是 SELECT 消息。* WHERE thread_id = '1' 并且参与者是 thread_id = '1' FROM 参与者表的一部分(不是和)。

问题是还有其他参与者,我需要显示该线程的所有消息,而不仅仅是 session 持有者。换句话说,我正在寻找一个查询来获取 session 持有者是参与者的给定线程中的所有消息,即使他没有发布消息(参与者在参与者表中给出)。

最佳答案

SELECT m.* FROM messages m INNER JOIN participants p 
ON m.thread_id=p.thread_id
WHERE m.thread_id = '1' AND p.participant_id='the-session-holder-id'

如果上述查询返回 0,则表示 session-holder-id 不是参与者。否则,查询将返回属于该线程的所有消息。

关于MYSQL合并2个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11405221/

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