Sql 使用“插入覆盖”更改DataRicks delta的数据捕获

Sql 使用“插入覆盖”更改DataRicks delta的数据捕获,sql,apache-spark,hive,azure-databricks,Sql,Apache Spark,Hive,Azure Databricks,我不想删除并选择要加载到增量表中的数据,而是希望使用INSERT OVERRIDE来提高性能。 我有几个问题,例如 query1=从asl_process.otr中删除,其中substring请求_delivery_d,1,6在'{}','{}','{}','{}'中。formatmonth_M1,month,month_P1,month_P2 query2=从asl_process.otr中删除,其中子字符串请求的_delivery_d,1,6在选择不同的子字符串请求的_delivery_d,

我不想删除并选择要加载到增量表中的数据,而是希望使用INSERT OVERRIDE来提高性能。 我有几个问题,例如

query1=从asl_process.otr中删除,其中substring请求_delivery_d,1,6在'{}','{}','{}','{}'中。formatmonth_M1,month,month_P1,month_P2

query2=从asl_process.otr中删除,其中子字符串请求的_delivery_d,1,6在选择不同的子字符串请求的_delivery_d,1,6从df_otrcur

我想总结一下

我尝试在sql语句中重写这两个查询,如下所示:

%sql

INSERT OVERWRITE TABLE asl_process.otr
    PARTITION(Ord_Planned_GI_date)
    SELECT * FROM asl_process.otr 
    WHERE substring(`Requested_delivery_d`,1,6) < > ('month_M1', 'month', 'month_P1', 'month_P2')
          AND substring(`Requested_delivery_d`,1,6) < > (select distinct substring(`Requested_delivery_d`,1,6) from df_otrcurr)
问题是我得到了以下错误: SyntaxError:插入覆盖时语法无效


我做错了什么?不喜欢在表的名称之前有架构?。

您在Insert OVERRIDE查询中提到了2 FROM子句

您在Insert OVERRIDE查询中提到了2 FROM子句