我们现在没有BigQuery中的十进制数据类型.所以我必须使用float
但
在Bigquery浮动师
0.029*百分之五十零= 0.014500000000000002
虽然
0.021*百分之五十零= 0.0105
将值向上舍入
我必须使用round(floatvalue*10000)/ 10000.
这是在BigQuery中处理十进制数据类型的正确方法吗?
取决于您的编码首选项 - 例如,您可以使用简单ROUND(floatvalue, 4)
取决于您需要如何向上或向下舍入 - 您可以分别调整表达式
例如ROUND(floatvalue + 0.00005, 4)
在下面的链接中查看BigQuery Standard SQL的所有舍入函数
请注意,这个问题现在需要一个不同的答案。
问题的前提是“我们现在 BigQuery 中没有小数数据类型”。
但现在我们做到了:您可以使用NUMERIC:
SELECT CAST('0.029' AS NUMERIC)*50/100
# 0.0145
Run Code Online (Sandbox Code Playgroud)
只需将您的列NUMERIC改为FLOAT64,您就会得到所需的结果。
| 归档时间: |
|
| 查看次数: |
9505 次 |
| 最近记录: |