gpt4 book ai didi

php - 使用 WHERE 2 条件选择数据

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

t_消息

msg_id | message | user_id

示例数据:

01 | hai how are you | 01
02 | will you marry me ? | 02

t_users
示例数据:

uid | username | full_name
01 | greg | Greg Fish
02 | drown | Leon Drown

友谊
示例数据:

uid | uid_fk | status
01 | 02 | friend
02 | 01 | friend

我有 3 个表关系。现在我想要来自用户显示的消息和来自其他用户的消息(如果状态为好友)。
例如,如果 uid 1 已登录:
用户标识符 1
你好吗

uid 2(这个显示是因为 uid 1 和 uid 2 是 friend 。
你愿意嫁给我吗?

这是我提出的查询:

$query = mysql_query("
SELECT
M.msg_id,
M.uid_fk,
M.message,
M.created,
U.full_name,
U.profile_pic,
U.username,
U.uid,
F.status,
F.uid

FROM
t_haps_wall M,
t_users U,
t_join_user F

WHERE
M.uid_fk=U.uid

最佳答案

您必须JOIN 三个表,ON f.uid_fk = u.uid 与线程表,如下所示:

SELECT 
M.msg_id,
M.uid_fk,
M.message,
M.created,
U.full_name,
U.profile_pic,
U.username,
U.uid,
F.status,
F.uid
FROM t_haps_wall M
INNER JOIN t_users U ON m.user_id = u.uid
INNER JOIN t_join_user F ON f.uid_fk = u.uid

SQL Fiddle Demo

关于php - 使用 WHERE 2 条件选择数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13492079/

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