У меня есть несколько CSV-файлов, которые я хочу загрузить в таблицу кустов, моя проблема в том, что последовательность заголовка моего CSV-файла не является фиксированной.
Если у меня есть два CSV-файла
sample1.csv
column1,column2
"A","B"
и
sample2.csv
column2,column1
"A","B"
Я пытаюсь использовать приведенный ниже код.
spark.sql("drop table if exists faizan.sample")
val df = spark.read.format("csv").option("wholeFile", true).option("multiline",true).option("inferSchema", "true").option("header", true).option("escape","\"").csv("faizan/sample/sample/sample1.csv", "faizan/sample/sample/sample3.csv")
val newNames = Seq("column1","column2")
val dfRenamed = df.toDF(newNames: _*)
dfRenamed.createOrReplaceTempView("tempTable")
val tempDf = spark.sql("select * from tempTable where")
tempDf.write.saveAsTable("faizan.sample")
Я получаю вывод:
+-------+-------+
|column1|column2|
+-------+-------+
| A B|
| A B|
+-------+-------+
Ожидаемый вывод:
+-------+-------+
|column1|column2|
+-------+-------+
| A B|
| B A|
+-------+-------+