You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BigQuery查询报错求助:拆分标签并移除无关字符偏移

BigQuery查询语法错误修正方案

问题场景

你的column1数据格式为tag1,3125;tag2,024,需要实现两个逻辑:按分号拆分行、移除逗号及后续字符偏移量仅保留标签名,但原查询报Syntax error: Unclosed string literal错误。

原查询的问题点

  1. SPLIT返回数组类型,无法直接传入REGEXP_REPLACE处理,必须先展开数组
  2. 表名不能用单引号包裹,需用反引号或直接写合法表名
  3. 字符串替换中使用了HTML转义字符",不符合BigQuery语法

修正后的查询

SELECT person, COUNT(*) AS count
FROM (
  SELECT REGEXP_REPLACE(tag_item, r',.*', '') AS person
  FROM `db_name`, UNNEST(SPLIT(column1, ';')) AS tag_item
)
GROUP BY person
ORDER BY 2 DESC

修改说明

  • 用UNNEST(SPLIT(column1, ';'))将拆分后的标签数组展开为独立行,确保每个标签能被单独处理
  • 表名改用反引号包裹(若表名无特殊字符可直接省略反引号)
  • 将转义的"替换为标准空字符串'',符合BigQuery字符串书写规范
  • 为展开的数组元素命名tag_item,明确处理对象

内容的提问来源于stack exchange,提问作者Celeste

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 12:42:03