我已经在Hive中创建了一个按客户和月份划分的外部表。
该要求要求从该表中删除ID=201
的数据,但没有按ID
列进行分区。
我尝试处理插入覆盖,但无法正常工作。
我们正在使用Spark 2.2.0。
我该如何解决这个问题?
val sqlDF = spark.sql("select * from db.table")
val newSqlDF1 = sqlDF.filter(!col("ID").isin("201") && col("month").isin("062016"))
val columns = newSqlDF1.schema.fieldNames.mkString(",")
newSqlDF1.createOrReplaceTempView("myTempTable") --34
spark.sql(s"INSERT OVERWRITE TABLE db.table PARTITION(client, month) select ${columns} from myTempTable")