gpt4 book ai didi

hadoop - 如何用一个点从数字a格式化成千上万

转载 作者:行者123 更新时间:2023-12-02 20:41:28 27 4
gpt4 key购买 nike

我正在寻找格式化a点成千上万的最佳方法。我正在从另一个表创建 View ,并且需要一些列具有这种类型的格式。

例如:10000-> 10.000

预先感谢您的可能回答!

最佳答案

有没有UDF的方法,但这可能是性能问题。但是对于少量数据,它可以工作:
您可以使用以下内置功能组合:

// Template
select reverse(concat_ws(".",split(reverse(<column-to-format>),"(?<=\\G.{3})")));
// sample 1 - format number 12345678
select reverse(concat_ws(".",split(reverse("12345678"),"(?<=\\G.{3})")));
// sample 2 - format number 10000
select reverse(concat_ws(".",split(reverse("10000"),"(?<=\\G.{3})")));

示例1的编号12345678的说明
1. reverse("12345678") Result: 87654321
2. split(reverse("12345678"),"(?<=\\G.{3})")")) Result: array [876,543,21]
3. concat_ws(".",split(reverse("10000"),"(?<=\\G.{3})")) Result "876.543.21"
4. finally reverse it back. Result: "12.543.876"

关于hadoop - 如何用一个点从数字a格式化成千上万,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49625757/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com