Вывести данные из объединённых таблиц - MySQL

Узнай цену своей работы

Формулировка задачи:

Есть 2 таблицы, в одной пользователи, а в другой задачи. Мне надо сделать, что бы выводились задачи у конкретного пользователя. Я у меню выводить задачи у всех пользователей
SELECT login, description FROM USER, task WHERE task.assigned_user_id = USER.id
Но не могу вывести задачи, у конкретного пользователя, если напишу
SELECT login, description FROM USER, task WHERE task.assigned_user_id = USER.id WHERE `login` = 'Dima'
то будет ошибка, как это сделать?

Решение задачи: «Вывести данные из объединённых таблиц»

textual
Листинг программы
SELECT * FROM task WHERE assigned_user_id IN (SELECT id FROM USER WHERE login = 'Dima')

Объяснение кода листинга программы

  1. Создаётся запрос SELECT для выбора всех данных из таблицы task.
  2. В условии WHERE указывается, что нужно выбрать только те строки, в которых значение поля assigned_user_id содержится в результате запроса SELECT, который выполняется в скобках.
  3. Внутри скобок находится ещё один запрос SELECT, который выбирает все строки из таблицы USER, в которых значение поля login равно 'Dima'.
  4. Результатом выполнения внешнего запроса SELECT будет набор данных из таблицы task, в которых значение поля assigned_user_id соответствует значению поля id в таблице USER для пользователя с логином 'Dima'.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы