SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 31.12.2017 11:45:29

dima8101
Участник
Зарегистрирован: 26.11.2017
Сообщений: 5

Слияние двух таблиц

Подскажите как объединить данные двух таблиц в одну, что бы в итоге получилась таблица из четырёх столбцов. Если в какой строке отсутствуют данные то там должен быть 0 или NULL.


SELECT
ca.date date_debet,
ca.debet
FROM consumer_account ca
WHERE ca.id_consumer = '46';

SELECT
cr.date date_credit,
cr.summa credit
FROM consumer_record cr
WHERE cr.id_consumer = '46';
 

Неактивен

 

#2 31.12.2017 11:57:31

klow
Старожил
Зарегистрирован: 06.12.2014
Сообщений: 411

Re: Слияние двух таблиц

Объединить по дате?

SELECT
  ca.date date_debet,
  ca.debet,
  cr.date date_credit,
  cr.summa credit
FROM (SELECT date FROM consumer_account WHERE id_consumer = '46' UNION SELECT date FROM consumer_record WHERE id_consumer = '46') c
  LEFT JOIN consumer_account ca ON ca.date = c.date AND ca.id_consumer = '46'
  LEFT JOIN consumer_record cr ON cr.date = c.date AND cr.id_consumer = '46'

Но рекомендую подумать над физическим объединением двух таблиц в одну.

Отредактированно klow (31.12.2017 12:02:32)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson