Объединить 4 таблицы - MySQL
Формулировка задачи:
Всем доброй ночи! Помогите составить запрос
Есть 4 таблицы users, 1c_password, mail_password, comp_password
В users - 2 поля (id, name)
В остальных по 3 - (id, user_id, password)
user_id и name связаны внешним ключом
Мне необходимо вывести полный список из всех 4 таблиц
Пример
Иван Иванов|123|qwerty123|5544|
Алексей Алексеев|4433|5454|NULL
Сергей Сергеев|NULL|656|dodo44
Я пробую при помощи inner join но у меня не получается избавиться от ненужных мне полей
Выходит что то типа:
1|Иван Иванов|1|1|123|1|1|qwerty123|1|1|5544
И юзер которого нет хотя бы в одной таблице не выводится вообще
Решение задачи: «Объединить 4 таблицы»
textual
Листинг программы
SELECT q.имя_поля, w.имя_поля, e.имя_поля, r.имя_поля FROM users q LEFT JOIN 1c_password w ON w.user_id = q.id LEFT JOIN comp_password e ON e.user_id = q.id LEFT JOIN mail_password r ON r.user_id = q.id
Объяснение кода листинга программы
В представленном коде происходит объединение (JOIN) четырех таблиц: users, 1c_password, comp_password и mail_password по полю user_id. В результате этого объединения выбираются поля с именами имя_поля из каждой таблицы. Таким образом, результатом выполнения данного запроса будет список пользователей с их именами и идентификаторами, а также с информацией о хешированных паролях из всех четырех таблиц.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д