Два SQL-запроса на выбор - PullRequest
0 голосов
/ 07 июня 2019

У меня есть один запрос на выборку, подобный этому, в таблице, где хранятся только идентификатор сообщения, автор и получатель: (Я хочу получить все идентификаторы сообщения)

SELECT message_id FROM messages_to WHERE author_id=0

С этим списком message_id я хочу ВЫБРАТЬ в другой таблице, чтобы получить фактические сообщения:

SELECT messages FROM messages WHERE message_id=(message_id_from_before)

Оба запроса могут возвращать несколько результатов.

Возможно ли иметь один запрос, который возвращает результат второго запроса SELECT? К сожалению, у меня нет необходимых знаний для этого; если бы кто-нибудь дал мне небольшой совет, я был бы невероятно благодарен.

Ответы [ 2 ]

2 голосов
/ 07 июня 2019

Вы можете использовать подзапрос в вашем состоянии:

SELECT messages FROM messages WHERE message_id IN (
  SELECT message_id FROM messages_to WHERE autor_id=0
)
0 голосов
/ 07 июня 2019

Вы можете использовать соединение, чтобы получить результат из обеих таблиц, как вы упомянули message_id в обеих таблицах.

Попробуйте это

SELECT messages.message FROM messages 
Inner Join message_id on message_id.message_id = messages.message_id
WHERE message_id.author_id = 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...