MySQL Query для извлечения данных из двух таблиц, даже если данные не найдены во второй таблице - PullRequest
1 голос
/ 15 февраля 2012

Я хочу получить данные из двух таблиц, даже если во второй таблице нет данных.Мне нужны пустые значения без данных.

Например, в таблице 1 есть поля

  • id
  • имя
  • пароль

таблица 2 имеет

  • id (внешний ключ ссылается на идентификатор из таблицы 1)
  • f1
  • f2
  • f3

Некоторое времяТаблица 2 не имеет значения для конкретного пользователя.Для этого мне нужны нулевые значения.

Здесь я даю пример ввода и ожидаемый результат

table1
id name password
1  nam1  pass1
2  nam2  pass2

table 2
id f1 f2 f3
1   1  2  3

sample output
id name password f1 f2 f3
1  nam1  pass1   1  2  3
2  nam2  pass2   null null null

Мне нужен запрос для извлечения данных.

Ответы [ 2 ]

6 голосов
/ 15 февраля 2012

Вам нужно SELECT с LEFT JOIN

Пример запроса будет таким:

SELECT 
    table1.id,table1.name,table1.password,table2.f1,
    table2.f2,table2.f3 
FROM table1 
LEFT JOIN table2 
ON table1.id=table2.id
1 голос
/ 15 февраля 2012

http://www.w3schools.com/sql/sql_join_left.asp

Вы хотите посмотреть левое соединение и правое соединение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...