我有三张桌子,我需要加入教育目的。
Table: users
id | username | photo
1 | me | my_photo
2 | my_friend| friend's photo
3 | somebody | somebody`s photo
Table: chat
mid | sender | receiver | created
1 | me | my friend| 2016-12-27 09:32:2
2 | my_friend | me | Y-m-d h:i:s
3 | me | somebody | 2016-12-27 09:32:2
4 | somebody | me | Y-m-d h:i:s
Table:favorites
id | subscriber | subscribed_to
1 | me | my_friend
所需的输出是
Conversations:
username | photo | created | subscribed
me | my friend's photo| 2016-12-27 09:32:2 | yes
my_friend | my foto | Y-m-d h:i:s | no
me | somebody's foto | 2016-12-27 09:32:2 | no
somebody | my foto | Y-m-d h:i:s | no
目前,我使用该代码完成了第一部分:
$qmessage = mysql_query("
select c.*, u.photo
from chat c
join users u on u.username = c.sender
WHERE (sender = '$login_session' AND receiver = '$uid') OR
(sender = '$uid' AND receiver = '$login_session')
");
答案 0 :(得分:0)
我认为你真正需要的是一系列连接。以下查询中可能需要解释的唯一部分是最后的左连接。我使用发送方和接收方列将TypeError: expected string or buffer
表加入chat
表。然后我使用favorites
表达式来检查给定记录是否匹配。如果是,则假定订阅并打印CASE
,否则打印'yes'
。
'no'