我有一个列双列类型的表,我试图将其从double转换为字符串.
但是,当我使用cast命令时,它"巧妙地"将其转换为科学记数法.如下:
select
number,
cast(number as string),
from ...
Run Code Online (Sandbox Code Playgroud)
看起来像
number c1_
9999999902 9.999999902E9
9999999902 9.999999902E9
9999999902 9.999999902E9
9999999902 9.999999902E9
9999999909 9.999999909E9
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我如何避免将其转化为科学并保留原始文本?
小智 7
Hive将双重转换为科学表示,同时转换为字符串,因为Hive以同样的方式处理double本身.因此,问题不在于转换为字符串.
见下面的例子:
select 9999999902.0, cast(9999999902.0 as BIGINT), cast(cast(9999999902.0 as BIGINT) as string) from ..
Run Code Online (Sandbox Code Playgroud)
输出:
OK
9.999999902E9 9999999902
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
41641 次 |
| 最近记录: |