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

BigQuery中对字符串拆分结果执行TRIM去多余空格的方法咨询

解决方案

错误原因

你之前对AZE、EPI字段整体执行TRIM,仅能清理字段首尾的空格,无法处理字段内部、拆分后每个元素前后携带的多余空格。

最优实现写法

直接对UNNEST拆分后生成的每一行SYMB元素执行TRIM即可,写法最简洁,性能也无额外损耗:

WITH students AS (
    SELECT 
        AZE,
        EPI,
        TRIM(SYMB) AS SYMB
    FROM schools.boston, 
         UNNEST(SPLIT(AZE, ',') || SPLIT(EPI, ',')) AS SYMB
)

提示:你原有查询语句中SYMB字段后多了一个多余的逗号,会触发语法错误,上述代码已经同步修复了该问题。

可选进阶写法

如果后续需要用到处理后的完整数组,可以在拆分阶段用TRANSFORM对数组内所有元素批量去空格后再展开:

WITH students AS (
    SELECT 
        AZE,
        EPI,
        SYMB
    FROM schools.boston, 
         UNNEST(
             TRANSFORM(SPLIT(AZE, ','), item -> TRIM(item)) || 
             TRANSFORM(SPLIT(EPI, ','), item -> TRIM(item))
         ) AS SYMB
)

处理后效果

你的示例输入经过上述代码处理后,输出结果如下,无多余空格:

id 1 - row 1:english
id 1 - row 2:chinese
id 1 - row 3:french
id 1 - row 4:math
id 1 - row 5:physics

内容的提问来源于stack exchange,提问作者Pierre-Alexandre

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 09:21:00