【问题标题】:Google BigQuery: merge statementGoogle BigQuery:合并语句
【发布时间】:2018-11-29 20:10:08
【问题描述】:

如果 table 为空或者 using select 没有返回任何行,为什么这个合并不运行 insert 语句?

MERGE INTO
  `table` TGT
USING
  (
  SELECT
    field   
  FROM
    `table`
  WHERE 
    field='1'   
 ) SOURCE
ON
  (TGT.field = SOURCE.field )
  WHEN MATCHED  THEN 
    UPDATE SET  TGT.field='value1'
  WHEN NOT MATCHED   THEN
    INSERT   (field) VALUES   ( 'value2') 

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:
        MERGE INTO
         `table` DESTINY
        USING
         ( select 'value' as Field)  SOURCE 
        ON
         DESTINY.Field = SOURCE.Field
         WHEN MATCHED  THEN  UPDATE SET  DESTINY.Field='value 1'
         WHEN NOT MATCHED  THEN INSERT (Field) VALUES  ( 'value 2')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-12
      • 2021-10-30
      相关资源
      最近更新 更多