首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Spark SQL中格式化整数?

如何在Spark SQL中格式化整数?
EN

Stack Overflow用户
提问于 2020-08-19 13:07:45
回答 1查看 57关注 0票数 0

我是Spark的新手。任何帮助都将不胜感激。Spark SQL中有没有替代SQL的FORMAT()的方法?我的核心逻辑是用SQL编写的,并与spark.sql("query")一起运行。我有一个要求将id转换为4位数字。

例如,如果是1,则应转换为0001;如果是12,则应转换为0012。我知道在SQL中,我们可以像id一样使用FORMAT("%04d", id)。但这给了我一个错误,在Spark SQL中说的是FORMAT is not a function registered。在Spark的文档中找到了format_numberformat_string,但对我的情况没有帮助。

注意:我不想在我的java代码中做到这一点,但我想在SQL查询本身中做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2020-08-19 13:28:13

使用lpad函数。

代码语言:javascript
复制
spark.sql("SELECT lpad('1', 4, '0')").show

+-------------+
|lpad(1, 4, 0)|
+-------------+
|         0001|
+-------------+

您可以将'1'更改为id

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63480329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档