Как заполнить данные в SQL по вертикали из другой таблицы на основе совпадения идентификаторов?

#sql #ms-access

#sql #ms-доступ #ms-access

Вопрос:

Я пытаюсь создать новый запрос, который будет получать данные из разных таблиц на основе определенного совпадающего идентификатора. Проблема в моем случае заключается в том, что таблица 1 содержит несколько совпадающих идентификаторов в одном столбце (идентификаторы имеют связанные с ними исторические значения), тогда как таблица 2 содержит только одну строку с этим совпадающим идентификатором (и часть данных в другом столбце, связанная с ним, которую я пытаюсь извлечь на основе этого ключа).

Как мне заставить это работать, чтобы в моем запросе была определенная часть данных, которые меня интересуют в таблице 2, заполненная (с теми же значениями) до последней строки соответствующего идентификатора, найденного в таблице 2? Заранее спасибо!

Примером может быть:

Таблица 1.

 ID1 | Date
ID1 | Date
ID1 | Date
ID2 | Date
ID2 | Date
ID2 | Date
  

Таблица 2.

 ID1 | Data_of_interest1
ID2 | Data_of_interest2
ID3 | Data_of_interest3
  

Возврат должен выглядеть следующим образом:

 ID1 | Date | Data_of_interest1
ID1 | Date | Data_of_interest1
ID1 | Date | Data_of_interest1
ID2 | Date | Data_of_interest2
ID2 | Date | Data_of_interest2
ID2 | Date | Data_of_interest2
  

Ответ №1:

Достаточно простого JOIN :

 select t1.col1, t1.col2, t2.col2
from table1 t1
join table2 t2 on t2.col1 = t1.col1