NN
Size: a a a
NN
S
AZ
AT
ИК
NN
ИК
С
GP
A
A B Cя делаю по ним full outer join спарком по колонке "A":
A1 B1 C1
A2 B2 C2
A3 B3 C3
A D
A1 D1
A4 D4
first.join(second, Seq("A"), "full_outer")Результат, очевидно, получаю вот такой:
+---+----+----+----+Теперь вопрос - как спарком поизящнее сделать такой же джойн, но для каждого конкретного значения в колонке A? Или без select distinct и затем fold не получится? Пример результата:
| A| B| C| D|
+---+----+----+----+
| A1| B1| C1| D1|
| A2| B2| C2|null|
| A3| B3| C3|null|
| A4|null|null| D4|
+---+----+----+----+
+---+----+----+----+
| A| B| C| D|
+---+----+----+----+
| A1| B1| C1| D1|
| A4|null|null| D4| <- full outer join A1 values with second dataset
| A1|null|null| D1|
| A2| B2| C2|null|
| A4|null|null| D4| <- full outer join A2 values with second dataset
| A1|null|null| D1|
| A3| B3| C3|null| <- full outer join A3 values with second dataset
| A4|null|null| D4|
+---+----+----+----+
K
NN
ИК
A B Cя делаю по ним full outer join спарком по колонке "A":
A1 B1 C1
A2 B2 C2
A3 B3 C3
A D
A1 D1
A4 D4
first.join(second, Seq("A"), "full_outer")Результат, очевидно, получаю вот такой:
+---+----+----+----+Теперь вопрос - как спарком поизящнее сделать такой же джойн, но для каждого конкретного значения в колонке A? Или без select distinct и затем fold не получится? Пример результата:
| A| B| C| D|
+---+----+----+----+
| A1| B1| C1| D1|
| A2| B2| C2|null|
| A3| B3| C3|null|
| A4|null|null| D4|
+---+----+----+----+
+---+----+----+----+
| A| B| C| D|
+---+----+----+----+
| A1| B1| C1| D1|
| A4|null|null| D4| <- full outer join A1 values with second dataset
| A1|null|null| D1|
| A2| B2| C2|null|
| A4|null|null| D4| <- full outer join A2 values with second dataset
| A1|null|null| D1|
| A3| B3| C3|null| <- full outer join A3 values with second dataset
| A4|null|null| D4|
+---+----+----+----+
S
AZ
AZ
A B Cя делаю по ним full outer join спарком по колонке "A":
A1 B1 C1
A2 B2 C2
A3 B3 C3
A D
A1 D1
A4 D4
first.join(second, Seq("A"), "full_outer")Результат, очевидно, получаю вот такой:
+---+----+----+----+Теперь вопрос - как спарком поизящнее сделать такой же джойн, но для каждого конкретного значения в колонке A? Или без select distinct и затем fold не получится? Пример результата:
| A| B| C| D|
+---+----+----+----+
| A1| B1| C1| D1|
| A2| B2| C2|null|
| A3| B3| C3|null|
| A4|null|null| D4|
+---+----+----+----+
+---+----+----+----+
| A| B| C| D|
+---+----+----+----+
| A1| B1| C1| D1|
| A4|null|null| D4| <- full outer join A1 values with second dataset
| A1|null|null| D1|
| A2| B2| C2|null|
| A4|null|null| D4| <- full outer join A2 values with second dataset
| A1|null|null| D1|
| A3| B3| C3|null| <- full outer join A3 values with second dataset
| A4|null|null| D4|
+---+----+----+----+
A
ИК
A
AZ