Hive 如何在不舍入的情况下截断蜂巢中的两位数到四位数?

Hive 如何在不舍入的情况下截断蜂巢中的两位数到四位数?,hive,truncate,hiveql,number-formatting,Hive,Truncate,Hiveql,Number Formatting,我需要将一个数字截断为点后的4位数字,而不是四舍五入。 我尝试使用格式_number(num,4),但它确实进行舍入。 我需要在不舍入的情况下截断它,只是为了扔掉其他数字。 有什么想法吗?有两种方法可以实现,因为蜂巢提供的所有功能都将以四舍五入结束 将double乘以10000->强制转换/格式化为INT以删除数字->除以10000 您可以编写自己的UDF来实现这一点。编写UDF非常容易。这里是开始的链接

我需要将一个数字截断为点后的4位数字,而不是四舍五入。 我尝试使用格式_number(num,4),但它确实进行舍入。 我需要在不舍入的情况下截断它,只是为了扔掉其他数字。
有什么想法吗?

有两种方法可以实现,因为蜂巢提供的所有功能都将以四舍五入结束

  • 将double乘以10000->强制转换/格式化为INT以删除数字->除以10000
  • 您可以编写自己的UDF来实现这一点。编写UDF非常容易。这里是开始的链接