我无法删除where
定义的范围。
我的查询:
delete from `dataset.events1` as t where t.group='error';
结果:
错误:表
UPDATE
上的DELETE
或dataset.events1
语句会影响流缓冲区中的行,这是不支持的。
答案 0 :(得分:2)
根据BQ docs:
最近通过流(使用tabledata.insertall方法)写入表的行不能使用UPDATE,DELETE或MERGE语句进行修改。最近的写入通常是最近30分钟内发生的写入。请注意,表中的所有其他行都可以通过使用UPDATE,DELETE或MERGE语句进行修改。
这看起来像您面临的错误。
您可以检查您的表是否通过BigQuery API连接了流缓冲区。
答案 1 :(得分:1)
查询最近流到表中的行以保持数据一致性时,此错误消息被视为expected behavior。基于此,需要等到刷新缓冲区后才能进行此操作,这可能需要90分钟才能用于复制/导出和其他操作,否则您将得到相同的错误。
要验证该表是否具有活动的流缓冲进程,您可以检查tables.get响应并验证其是否包含名为 streamingBuffer 的部分。