hive同时不包含一些字符串_Hive从双重转换为字符串不在科学中

本文介绍如何在Hive中处理double类型数据,避免将其转换为科学记数法,保持原始数值显示。通过实例演示了问题所在,并提供了解决方案,包括理解Hive处理double的方式以及使用特定类型转换来保持精确度。
摘要由CSDN通过智能技术生成

I have a table with a column double type, and I am trying to convert that from double to string.

However, when I use the cast command, it "smartly" convert that into scientific notation. like below:

select

number,

cast(number as string),

from ...

it looks like

number c1_

9999999902 9.999999902E9

9999999902 9.999999902E9

9999999902 9.999999902E9

9999999902 9.999999902E9

9999999909 9.999999909E9

Can anyone show me how to avoid converting that into scientific and keep the raw text?

解决方案

Hive converts double to scientific representation while cast to string because Hive treats double itself in a same way. Therefore, problem is not with cast to string.

See below example:

select 9999999902.0, cast(9999999902.0 as BIGINT), cast(cast(9999999902.0 as BIGINT) as string) from ..

Output:

OK

9.999999902E9 9999999902

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值