gpt4 book ai didi

postgresql - 在 Postgresql 中将 int 值转换为数字?

转载 作者:行者123 更新时间:2023-11-29 12:38:08 24 4
gpt4 key购买 nike

我想知道 PostgreSQL 中是否有内置的方法可以将整数值转换为数字?

例如,是否可以将整数 10 转换为字符串 TEN

谢谢。

最佳答案

没有内置的东西。对于这类事情,您最好的选择是使用 PostgreSQL 的可插入过程语言。将 PL/Perl 或 PL/Python 与合适的 Perl 或 Python 库一起使用来完成这项工作。

在这种情况下,我可能会使用 PL/Perl 和 Lingua::EN::Numbers .

CREATE OR REPLACE FUNCTION num2en(numeric) RETURNS text AS $$
use Lingua::EN::Numbers qw(num2en);
return num2en($_[0]);
$$ LANGUAGE plperlu;

您需要首先使用 CPAN 或系统包将 Lingua::EN::Numbers 安装到 PostgreSQL 使用的 Perl 中。在我的例子 (Fedora 19) 中,这是一个简单的 yum install perl-Lingua-EN-Numbers.noarch,然后我可以:

regress=> SELECT num2en(10);
num2en
--------
ten
(1 row)

regress=# SELECT num2en(NUMERIC '142.5');
num2en
--------------------------------------
one hundred and forty-two point five
(1 row)

默认情况下,普通用户可以访问该函数,因此您无需发出任何额外的 GRANT

关于postgresql - 在 Postgresql 中将 int 值转换为数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18313898/

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