MS Access объединяет две таблицы - PullRequest
1 голос
/ 18 февраля 2020

Мне нужно создать новую таблицу на двух столах. У меня есть база данных в MS Access и нужно мигрировать.

               tableT                                          tableS

  ID   CustID   DATE   Exp1   Exp2              ID   CustID   DATE   Tem1   Tem2
  --------------------------------              ---------------------------------
  1       1    1/1/00   5      5                1       1    1/1/00   3      4
  2       2    1/1/00   1      3                2       2    1/1/00   5      0
  3       1    3/1/00   3      2                3       1    5/1/00   0      3
  4       3    4/1/00   4      1                4       3    6/1/00   0      0

Таблица требуемых выходных данных tableNew:

  ID   CustID   DATE   Exp1   Exp2  Tem1   Tem2
  ---------------------------------------------
  1       1    1/1/00   5      5     3      4
  2       2    1/1/00   1      3     5      0
  3       1    3/1/00   3      2           
  4       3    4/1/00   4      1     
  5       1    5/1/00                0      3
  6       3    6/1/00                0      0

Если я использую внешнее соединение, я не получу нужный вывод.

Любая идея или помощь .

1 Ответ

2 голосов
/ 18 февраля 2020

Вы хотите full join. Вы можете эмулировать это в MS Access, используя:

select t.CustID, t.DATE, t.Exp1, t.Exp2, s.tem1, s.tem2
from TableT as t left outer join
     tableS as s
     on t.CustId = s.CustId and t.date = s.date
union all
select s.CustID, s.DATE, null, null, s.tem1, s.tem2
from tableS as s left outer join
     tableT as t
     on t.CustId = s.CustId and t.date = s.date
where t.CustId is null;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...