Kulaxyz
@Kulaxyz
Могу лучше

Почему не работает SQL-запрос с join?

DB::table('messages')
            ->join('deleted_messages', 'messages.id', '=', 'deleted_messages.message_id')
            ->where('chat_id', $this->id)
            ->where('deleted_messages.message_id', '!=','messages.id')
            ->get();

Пытаюсь составить запрос, который будет вытягивать все записи по текущему чату без тех, id которых есть в таблице deleted_messages.
Что не так делаю?
  • Вопрос задан
  • 145 просмотров
Решения вопроса 1
kimono
@kimono
Web developer
По-моему запрос должен выглядеть следующим образом:
SELECT *
FROM messages
LEFT JOIN deleted_messages
  ON messages.id = deleted_messages.message_id
WHERE
  messages.chat_id = :id
  AND
  deleted_messages.message_id IS NULL


А то что вы джойните таблицу по айдишникам, а потом пихаете их неравенство в условие - вам даёт скорее всего пустой результат.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Amigoweb Магнитогорск
от 50 000 до 70 000 ₽
Улыбка радуги Санкт-Петербург
от 100 000 ₽
RUVENTS Москва
от 120 000 до 140 000 ₽
04 апр. 2020, в 23:07
30000 руб./за проект
04 апр. 2020, в 23:05
100000 руб./за проект
04 апр. 2020, в 22:57
2000 руб./за проект