Как объединить две таблицы, просматривая значения из трех таблиц? - PullRequest
0 голосов
/ 17 декабря 2018

Я хочу создать новую таблицу из 3 таблиц:

  1. table1 - исходная таблица
  2. table2 - это подмножество tabl1, за исключением одного дополнительного столбца
  3. table3 имеет разные столбцы.

Все эти таблицы связаны столбцом ID.

Я знаю, что мне понадобится вертикальное соединение (СОЮЗ).

Запрос:

  1. Мне нужно объединить все записи в таблице2 и найти значения в таблице2.field1 и получить набор записей из таблицы1, где поле1 в таблице2 находится в таблице1.id
  2. Мне нужно указать table3 где table3.date> = '2010-10-01' и использовать table3.id, чтобы получить набор записей из table1, где table3.id = table1.id

Как использовать объединение UNION для поиска значений из таблицы1 и сохранения всех записей из таблицы2?

1 Ответ

0 голосов
/ 17 декабря 2018

Вы можете использовать:

--CREATE VIEW my_view AS 
SELECT sub.id, sub.col1, sub.col2, table3.col1, ...
-- INTO #temp_table -- alternatively
FROM (SELECT id,col1, col2, ... -- only common column list, drag and drop from
      FROM table1               -- object explorer
      UNION 
      SELECT id, col1, col2, ...
      FROM table2) sub
JOIN table3 ON table3.id = sub.id 
WHERE table3.date >= '2010-10-01'
...