Даны две таблицы или фреймы данных. У одного будут наборы данных и соответствующие таблицы. У других будет источник и цель. Мне нужно решение для следующего условия: как только мы найдем ft.dataset = st.source, нам нужно заменить ft.table в st.source и пренебречь оставшимися записями.
Например: Здесь в первом блоке второй таблицы, которая находится от seq_no 1 до 6, у нас есть совпадение в Ab c, поэтому мы заменили на db.table1 и пренебрегли оставшимися записями в этом блоке. Точно так же нам нужно сделать то же самое для каждого блока второй таблицы. Обратите внимание, что Target одинакова во всех строках второй таблицы. Пожалуйста, помогите мне найти возможное решение в pyspark или Hive.
Первая таблица (ft):
Dataset | Table
_________________
Abc db.table1
Xyz db.table2
Def db.table3
Вторая таблица (st):
Target| seq_no| source
______________________
A 1 A
A 2 B1
A 3 C1
A 4 D1
A 5 Abc
A 6 Xyz
A 1 A
A 2 B1
A 3 C1
A 4 D1
A 5 Def
A 6 Abc
A 7 Xyz
Ожидаемый результат :
Target| seq_no | source
_______________________
A 1 A
A 2 B1
A 3 C1
A 4 D1
A 5 db.table1
A 1 A
A 2 B1
A 3 C1
A 4 D1
A 5 db.table3