使用长度PL / SQL将数字转换为单词

时间:2018-05-30 08:02:54

标签: oracle plsql oracle11g

我使用长度函数将数字转换为自己的代码。

以下是代码:

{{1}}

问题是,当我输入" 100"时,它成功转换为" ONE HUNDRED"。

如何实现转换代码" 101"进入" ONE HUNDRED ONE"。

1 个答案:

答案 0 :(得分:2)

JSP转换将为您做到这一点;你不需要提取第一个数字,或提供“百”数字。给自己发短信:

  IF v_length <= 3 THEN
    v_words := TO_CHAR(TO_DATE(NUM,'J'),'JSP');
  END IF;

如果传入101,则结果为ONE HUNDRED ONE。因为我将= 3更改为<= 3,它将适用于任何1,2或3位数值,因此传入11会返回ELEVEN

对于较长的值,您可能正在寻找something like this,这会将数字分成小组并将每个组转换为单词加上相应的比例(例如&#39;百万&#39;)。如果你想要非标准的分组,那么它会涉及更多,但最近有一个例子是here