将更新与 Left Join BigQuery 结合使用
Using update with Left Join BigQuery
我正在尝试在 BigQuery 中使用 LEFT JOIN 编写更新查询,但我不确定如何编写。
update Table1
set ColumnTest = ifnull(b.value, 'no run')
From left join (select distinct ID,value FROM Table2 where value = 10) B --
where Table1.ID= Table2.ID
我有 2 个表 Table1 和 Table2
我想用 Table2.Value 更新 Table1.ColumnTest,其中 Table1.ID= Table2.ID
如果 Table1 <> Table2 则更新 Table1.ColumnTest 为 'no run'
谢谢!!
新尝试
UPDATE Table1
SET LP = IFNULL(t2.value, 'no run')
FROM ( select distinct hits.eventInfo.eventCategory as ID, value
FROM Table2
CROSS JOIN UNNEST (hits) AS hits
left join TAble1 using (hits.eventInfo.eventCategory)
WHERE) t2
WHERE t1.ID = t2.ID
错误:语法错误:应为“)”或“,”但得到的是“.”
I want to update Table1.ColumnTest with Table2.Value where Table1.ID= Table2.ID and if Table1 <> Table2 then update Table1.ColumnTest with 'no run'
以下适用于 BigQuery 标准 SQL
UPDATE `table1` t1
SET ColumnTest = IFNULL(value, 'no run')
FROM (
SELECT id, value
FROM `table1`
LEFT JOIN `table2`
USING(id)
) t2
WHERE t1.id = t2.id
我正在尝试在 BigQuery 中使用 LEFT JOIN 编写更新查询,但我不确定如何编写。
update Table1
set ColumnTest = ifnull(b.value, 'no run')
From left join (select distinct ID,value FROM Table2 where value = 10) B --
where Table1.ID= Table2.ID
我有 2 个表 Table1 和 Table2
我想用 Table2.Value 更新 Table1.ColumnTest,其中 Table1.ID= Table2.ID 如果 Table1 <> Table2 则更新 Table1.ColumnTest 为 'no run'
谢谢!!
新尝试
UPDATE Table1
SET LP = IFNULL(t2.value, 'no run')
FROM ( select distinct hits.eventInfo.eventCategory as ID, value
FROM Table2
CROSS JOIN UNNEST (hits) AS hits
left join TAble1 using (hits.eventInfo.eventCategory)
WHERE) t2
WHERE t1.ID = t2.ID
错误:语法错误:应为“)”或“,”但得到的是“.”
I want to update Table1.ColumnTest with Table2.Value where Table1.ID= Table2.ID and if Table1 <> Table2 then update Table1.ColumnTest with 'no run'
以下适用于 BigQuery 标准 SQL
UPDATE `table1` t1
SET ColumnTest = IFNULL(value, 'no run')
FROM (
SELECT id, value
FROM `table1`
LEFT JOIN `table2`
USING(id)
) t2
WHERE t1.id = t2.id