Форум программистов, компьютерный форум, киберфорум
Наши страницы
MySQL
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
grisha2217
19 / 19 / 10
Регистрация: 13.08.2013
Сообщений: 295
1

Вывести данные из двух таблиц, причём данные из второй таблицы не всегда имеются

28.01.2017, 22:38. Просмотров 733. Ответов 1
Метки нет (Все метки)

Здравствуйте.
Есть две таблицы.
Первая - quiz_title (первый скриншот)
Вторая - xf_quiz_history (второй скриншот)

Задача: вывести все данные из quiz_title, но при этом вывести данные из второй таблицы (если таковы имеются).

Собственно, в обоих таблицах есть quiz_id, по которому нужно искать данные из второй таблицы и есть поле user_id во второй таблице, означающее ID пользователя, который прошёл тест.

SQL
1
2
3
4
SELECT quiz_title.*, quiz_history.finish_date AS finish_date
        FROM quiz_title LEFT OUTER JOIN quiz_history 
        ON quiz_title.quiz_id = quiz_history.quiz_id
        WHERE quiz_history.user_id = ?
То есть, нужно спарсить finish_date из второй таблицы, если в ней имеется запись quiz_title.quiz_id = quiz_history.quiz_id и user_id = ? (плейсхолдер). А если запись отсутствует, то finish_date должно быть NULL.

Как должен выглядеть мой запрос?
А если использовать текущий запрос, то он выведет правильно только тогда, когда есть необходимая запись во второй таблице. Если ее нет, то система ничего не выведет вообще.
0
Изображения
  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2017, 22:38
Ответы с готовыми решениями:

Вывести данные из двух таблиц (jdbc)
Здравствуйте! Я подключился к базы данных через jdbc. Как мне вывести данные сразу из двух таблиц?

Вывести данные из двух связанных таблиц
Добрый день,пожалуйста, помогите мне у меня 2 таблицы с товарами магазина,первая таблица это...

Как можно вывести данные из двух таблиц?
Здравствуйте. Подскажите как можно одним запросом вывести данные из двух таблиц при сортировке по...

Как в DataGridView вывести данные из двух таблиц
Добрый день. В БД есть таблицы Client и Device как можно вывести в DataGridView столбец NameOrg из...

Имеется две таблицы и необходимо из двух таблиц удалить данные с определенным параметром
Добрый день, вопрос таков. Имеется две таблицы и необходимо из двух таблиц удалить данные с...

1
grisha2217
19 / 19 / 10
Регистрация: 13.08.2013
Сообщений: 295
29.01.2017, 12:30  [ТС] 2
Решение: убрать WHERE ... (это выборка данных после джоина, поэтому выдавало неверный результат)
Нужно добавить ещё одно условие для джоина
SQL
1
2
3
SELECT quiz_title.*, quiz_history.finish_date AS finish_date
        FROM quiz_title LEFT OUTER JOIN quiz_history 
        ON quiz_title.quiz_id = quiz_history.quiz_id AND quiz_history.user_id = ?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2017, 12:30

Как вывести данные из двух таблиц в один datagridview
Здравствуйте, уповаю на Вас. Никак не могу понять как выводить данные из двух таблиц в один...

Как вывести данные из двух более таблиц mysql?
Подскажите пожалуйста! Необходимо: 1. на одну страницу вывести информацию из двух или более...

Вывести в одну HTML таблицу данные из двух таблиц mysqli
echo '<table>'; $result = mysqli_query($connection, "SELECT * FROM `mf_maps` WHERE `number` <...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru