SQL для сравнения столбцов двух разных таблиц

Я пытаюсь использовать sql только для отображения сообщения, если поле x в таблице 1 совпадает поле y в таблице 2

SELECT *
from privatemessags
JOIN users
WHERE privatemessags.reciver LIKE users.id

Это то, что у меня сейчас есть, но оно все еще печатает оба поля моей БД
Я хочу, чтобы сообщение печаталось, если id в таблице 1 равно reciver в таблице 2текущий вывод SQL

Любая помощь с благодарностью

1

Решение

Прежде всего, ваше соединение неверно. Учитывая ваше заявление:

Я пытаюсь использовать sql только для отображения сообщения, если поле х в таблице 1 совпадает с полем у в таблице 2

Тогда вы действительно хотите объединить обе таблицы, где table1.x = table2.y. Вы могли бы сделать это, создав нечто похожее на следующее:

выберите сообщение из таблицы 1 t1
присоединиться к table2 t2 на t1.x = t2.y

Присоединяясь к обеим таблицам, вы будете получать сообщения только тогда, когда table1.x = table2.y.

1

Другие решения

Чтобы показать поля только из первой таблицы, вы можете указать имя таблицы в инструкции выбора: «privatemessags. *»

SELECT privatemessags.*
from privatemessags
JOIN users
WHERE privatemessags.reciver LIKE users.id
1

По вопросам рекламы [email protected]