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

如何解决CAST转换带小数字符串为INT64时的报错问题

解决字符串含小数点转INT64的问题

针对字符串列含小数点无法直接CAST为INT64的情况,可按以下方式处理:

  • 基础转换(自动截断小数):先将字符串转为浮点型,再转整数型,BigQuery会自动截断小数部分

    CAST(CAST(your_column AS FLOAT64) AS INT64)
    

    示例:1.99 转换后为 1

  • 按需求处理小数:

    • 四舍五入后转整数:
      CAST(ROUND(CAST(your_column AS FLOAT64)) AS INT64)
      
      示例:1.99 转换后为 2
    • 强制截断小数(等同于基础转换,但更直观):
      CAST(TRUNCATE(CAST(your_column AS FLOAT64), 0) AS INT64)
      
      示例:1.99 转换后为 1
  • 处理异常值:如果列中存在非数字格式的字符串,用SAFE_CAST避免查询中断,非法值会返回NULL

    CAST(SAFE_CAST(your_column AS FLOAT64) AS INT64)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 20:44:59