- 18, May 2024
- #1
Всем привет,
Я пытаюсь создать базовую систему обмена сообщениями, чтобы пользователи могли обмениваться сообщениями друг с другом.
У меня есть таблица под названием «сообщения» и 7 столбцов в таблице –
message_id — по умолчанию, auto_increment
sender_id - идентификатор отправителя
приемник_id - идентификатор получателя
thread_id - я думаю, чтобы сгруппировать разговоры вместе?
открыто - 0 или 1, открыто или нет
сообщение - содержание сообщения
date_time - отметка DATETIME
Проблема, с которой я столкнулся, заключается в попытке сгруппировать сообщения, а затем отсортировать их.
Я думал как-нибудь использовать message_ID, поскольку они автоматически увеличиваются, и они будут в порядке? Не знаю, как это сделать, буду очень признателен за любую помощь!
У меня есть таблица под названием «сообщения» и 7 столбцов в таблице –
message_id — по умолчанию, auto_increment
sender_id - идентификатор отправителя
приемник_id - идентификатор получателя
thread_id - я думаю, чтобы сгруппировать разговоры вместе?
открыто - 0 или 1, открыто или нет
сообщение - содержание сообщения
date_time - отметка DATETIME
Проблема, с которой я столкнулся, заключается в попытке сгруппировать сообщения, а затем отсортировать их.
SELECT * FROM messages WHERE sender_id = 4279 OR receiver_id = 4279 GROUP BY thread_id ORDER BY date_time DESC
Код (SQL): есть ли простой способ сгруппировать их в потоки, при этом результатом будет самое новое сообщение в потоке, а затем отсортировать их по дате_времени?
Я думал как-нибудь использовать message_ID, поскольку они автоматически увеличиваются, и они будут в порядке? Не знаю, как это сделать, буду очень признателен за любую помощь!