0

我将回复存储在一个单独的表中,并将原始消息作为参考 ID。我想要做的是,当点击一条消息时,它会抓取所有相应的回复并将它们显示在主消息下,但是如何获取相应的消息?

这是我尝试过的,但找不到WHERE有效的子句。有什么方法可以将这些按to_idand分组from_idreference_id或者我是否都在错误的轨道上?

在这一点上,基本 SQL 几乎是我的上限,因此任何指针都会受到赞赏。

回复表 在此处输入图像描述

消息表 在此处输入图像描述

我想做的是与某人进行一次主要对话,如果您在所有进一步的回复和/或新消息出现在下方时向他们发送消息

例子:

MAIN MESSAGE to USER 1
//grouped by date and if a certain period passes block with a line
reply from user 2
reply from user 1
----------------------------
days later
new message from user 2

很快...

4

2 回答 2

1

你在寻找这样的东西吗?如果您可以提供消息和回复表的布局,它可能会有所帮助......

SELECT 
    `messages`.`message`,
    `replies`.`reply`
FROM 
    `messages`
JOIN
    `replies` ON(`messages`.`id` = `replies`.`message_id`)
于 2013-11-10T06:38:56.950 回答
1

不确定这是否是您要找的

SELECT m.subject, r.Message, r.from_id, r.to_id FROM MESSAGE m
JOIN replies r on m.reply_id = r.id
WHERE ((m.from_id = `user_1_id` AND m.to_id = `user_2_id`)
OR (m.from_id = `user_2_id` AND m.to_id = `user_1_id`))
ORDER BY r.date_sent asc
于 2013-11-10T07:02:08.343 回答