【问题标题】:Change data capture with databricks delta using "INSERT OVERWRITE"使用“INSERT OVERWRITE”使用 databricks delta 更改数据捕获
【发布时间】:2019-07-02 12:27:31
【问题描述】:

我不想删除和选择要加载到增量表中的数据,而是出于性能目的使用 INSERT OVERWRITE。 我有几个疑问,例如

query1 = "DELETE FROM asl_process.otr WHERE substring(Requested_delivery_d,1,6) in ('{}' , '{}' , '{}' , '{}')".format(month_M1,月, 月_P1, 月_P2) ;

query2 = "DELETE FROM asl_process.otr WHERE substring(Requested_delivery_d,1,6) in (select distinct substring(Requested_delivery_d,1,6) from df_otrcurr)

我想总结一下。

我尝试在 sql 语句中重写 2 个查询,例如:

%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)

问题是我收到以下错误: INSERT OVERWRITE 处的“SyntaxError:无效语法”。

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

【问题讨论】:

    标签: sql apache-spark hive azure-databricks


    【解决方案1】:

    您在插入覆盖查询中提到了 2 个 FROM 子句

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-09-23
      • 2022-10-15
      • 2021-05-18
      • 1970-01-01
      • 2022-01-02
      • 2021-09-29
      相关资源
      最近更新 更多