【问题标题】:Replacing dot by a comma and cast to double return null in Hive用逗号替换点并在 Hive 中强制转换为双返回 null
【发布时间】:2023-01-12 17:56:45
【问题描述】:

你好,我需要更换。(点)通过一个逗号(,)在 Hive 的物化视图的某个列中,然后将其投射到双/小数数据类型。

我的数据看起来像:11.1247653

所以我尝试使用:

SELECT CAST(regexp_replace('11.1247653','.',',') as double)

这次回归无效的价值观。谢谢你的帮助 !

【问题讨论】:

    标签: hive hql


    【解决方案1】:

    您无需替换点即可转换为十进制。 Hive 遵循International Bureau of Weights and Measures 标准并使用点表示小数点。所以数据实际上存储在点中。
    所以你应该使用下面的命令。

    CAST('11.1247653' as double) as out
    

    如果你必须用逗号显示,那么你可以使用 replace 将点替换为逗号。

    【讨论】:

      猜你喜欢
      • 2019-12-26
      • 1970-01-01
      • 2011-01-07
      • 2022-07-21
      • 1970-01-01
      • 1970-01-01
      • 2023-01-05
      • 2017-02-25
      • 1970-01-01
      相关资源
      最近更新 更多