使用浮动数据点计算大查询中的余数

问题描述 投票:0回答:1

Hive查询语言具有PMOD函数,可用于计算余数。此函数与整数和双精度完美配合。例如,将4.7除以2,计算出余数。

SELECT PMOD(4.7,2);

使用蜂巢式查询语言对此查询的答案是0.7

Google大查询具有MOD函数来计算余数。但是此功能仅适用于整数。

SELECT MOD(4.7,2);在Google大查询中不起作用。

在大查询中可以将4.7强制转换为INT64。然后,MOD功能将起作用,但答案将是1而不是0.7

任何帮助计算Google大查询中带有浮动数据点的余数的方法都将非常有用。

google-bigquery hiveql
1个回答
0
投票

计算浮点值的余数是一个有趣的概念,我个人到目前为止还没有听说过。根据您的描述,基本上就是寻找整数部分的余数并将小数部分加起来吗?如果是这样,则可以使用以下表达式(在您的示例中)来模仿:MOD(FLOOR(4.7),2) + 4.7 - FLOOR(4.7)考虑到整数部分为FLOOR(4.7),而小数部分为4.7 - FLOOR(4.7)

© www.soinside.com 2019 - 2024. All rights reserved.