@1ax3l
Web Developer

Как вывести переписку по парам?

Всем привет!
Есть таблица "messages" (id, from_id, to_id, message, read, timestamps)

И мне нужно вывести переписку между пользователями по паре
Мой запрос получается таким:
Message:where('from_id', $id)->orWhere('to_id', $id)->get();//получаем кому он отправлял и от кого получал

Но у меня не получается их группировать, пример:
1й юзер написал 2му юзеру, 2й юзер ответил 1му
При таком раскладе роли у них меняются т.е (from_id = 1й юзер, to_id = 2й юзер) и (from_id = 2й юзер, to_id = 1й юзер)
Мой запрос выводить каждую запись по отдельности, а мне нужно получить входящие и исходящие сообщения по парам между получателем и отправителем.
  • Вопрос задан
  • 139 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
SELECT * FROM message WHERE (from=1 AND to=2) OR (from=2 AND to=1)

А что такое по парам? Если первый юзер отправил второму три сообщения подряд, а второй так и не ответил, то все сломается?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
28 нояб. 2024, в 05:21
2000 руб./за проект
28 нояб. 2024, в 05:18
500 руб./за проект
28 нояб. 2024, в 03:51
3500 руб./за проект