跳到主要内容

double:转为双精度浮点

速查结论

double(expr) 是 Spark SQL 中用于将表达式结果强制转换为 DOUBLE(双精度浮点数)类型的函数。

语法

double(expr)

参数说明

参数说明
expr需要转换为 DOUBLE 类型的表达式或值。支持 STRING、数值等类型的输入

示例

> SELECT double('3.1415926535');
3.1415926535

> SELECT double(1);
1.0

> SELECT double('inf');
Infinity

常见报错与避坑指南

  • 特殊浮点值:支持 'inf'(正无穷)、'-inf'(负无穷)和 'nan'(非数值)的特殊字符串转换。
  • 精度限制:DOUBLE 类型遵循 IEEE 754 双精度规范,有效位数约为 15-17 位十进制数字。对于需要精确小数运算的场景(如金额计算),建议使用 DECIMAL 类型。
  • 与 cast 等价double(expr) 等价于 cast(expr AS DOUBLE)

Since: 2.0.1

📱关注公众号

「数据仓库技术」文章同步更新,不错过每一篇干货

微信公众号二维码
💬加群交流

备注「数据仓库技术」加入社群,每日一道大厂SQL真题

交流微信二维码

你可能还想看