У меня ниже двух наборов данных.
code,name
IN,India
US,United States
UK,United Kingdom
SG,Singapore
id,name,code1,code2,code3
1,abc,UK,SG,US
2,efg,SG,UK,US
Можем ли мы объединить code1, code2 и code3 с первым набором данных и получить имя для каждого столбца?
id,name,code1desc,code2desc,code3desc
1,abc,United Kingdom,Singapore,United States
2,efg,Singapore,United Kingdom,United States
Соединение с первым столбцом работает, однако сбой второго столбца.
Dataset<Row> code1 = people.join(countries, people.col("code1").equalTo(countries.col("code")),"left_outer").withColumnRenamed("name","code1desc");
code1.show();
Код ниже не работает:
Dataset<Row> code2 = code1.join(countries, code1.col("code2").equalTo(countries.col("code")),"left_outer");
code2.show();