是否可以基于与 BigQuery 中现有表的 JOIN 对表进行更新?
此查询中没有任何双打
SELECT profile_id, count(*) as cnt
FROM `instagram-tags-c67d8.sample_dataset.influence`
GROUP BY profile_id HAVING cnt > 1
它也适用于
select a.profile_id, b.username
from `instagram-tags-c67d8.sample_dataset.influence` AS a
inner join (
SELECT
DISTINCT profile_id, username
FROM `instagram-tags-c67d8.sample_dataset.profile_id_lut`) AS b
ON a.profile_id = b.profile_id
where a.username is null
现在我只有这个问题 UPDATE/MERGE 必须为每个目标行匹配最多一个源行
UPDATE
`instagram-tags-c67d8.sample_dataset.influence` AS a
SET
a.username = b.username
FROM (
SELECT
DISTINCT profile_id, username
FROM `instagram-tags-c67d8.sample_dataset.profile_id_lut`) AS b
WHERE
a.username IS NULL
AND a.profile_id = b.profile_id
该错误似乎表明有多个记录profile_id_lut
与profile_id
table中的给定匹配influence
。
您必须首先决定如何处理该用例。可能的选择包括:
profile_id_lut
username
s 中选择最大值或最小值profile_id
最佳选择取决于您的功能用例,无法根据您的问题中提供的信息进行评估...
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句