在SQL中,我使用以下代码根据唯一ID从表中删除重复项:
1. SELECT Unique_ID INTO holdkey FROM [Origination] GROUP BY Unique_ID HAVING count(*) > 1
2. SELECT DISTINCT Origination.*
INTO holddups
FROM [Origination], holdkey
WHERE [Origination].Unique_ID = holdkey.Unique_ID
3. DELETE Origination
FROM Origination, holdkey
WHERE Origination.Unique_ID = holdkey.Unique_ID
4. INSERT Origination SELECT * FROM holddups
Run Code Online (Sandbox Code Playgroud)
第二个过程不适用于BigQuery。无论我如何更改查询,对于无法识别的列和表,都会出现错误。
很显然,我删除了“ select into”查询,只是手动设置了目标表。我有SQL经验,并且知道该过程有效。是否有人有语法样本,可用于根据BQ的唯一ID删除重复记录的过程?还是修改它的方式使其运行?
我需要连接两个字符串,year 和 Quarter,它们的结构如下:Year|Q
2007|1
2008|2
2005|4
我尝试了以下代码:
update `Project.MACRO.Table`
set YearQuarter = CAST(year as string) + '_' + CAST(quarter as string)
where quarter is not null
Run Code Online (Sandbox Code Playgroud)
它不能仅作为 INT64 + INT64 工作;FLOAT64 + FLOAT64;NUMERIC + NUMERIC 是支持的签名。我不相信我可以使用 group_concat 作为更新的一部分。有什么建议?