@frontendo

Как сделать запрос на выборку диалогов из простой таблицы сообщений между двумя пользователями?

Не очень силен в sql, но хотелось бы сделать отображение диалогов на отдельной странице.
вот собственно структура таблицы с сообщениями
b47beccb2dc948c6b1ce8566f97788bb.jpg

данные для одного диалогая я выбираю так
$messages = DB::table('messages')
            ->where([
                ['from_id', '=', $user_id],
                ['to_id', '=', $companion_id],
            ])
            ->orWhere([
                ['to_id', '=', $user_id],
                ['from_id', '=', $companion_id],
            ])
            ->get();


Но не могу сообразить, как выбрать имеющихся собеседников для $user_id . То есть надо получить всех собеседников, которым писал юзер или которому писал юзер. Если есть возможность одним запросом также получить и последний коммент из этих диалогов, буду очень рад и благодарен
  • Вопрос задан
  • 129 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Arik
У вас запрос когда известно кто писал и кому писали, теперь вам нужно сделать запрос чтоб известный юзер ($user_id) был или отправитель или получатель. Т.е. просто убрать условия с $companion_id
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы