在 Pl/SQL 中将给定的数字转换为单词
先决条件——PL/SQL介绍
在 PL/SQL 代码中,命令组被安排在一个块中。块组相关的声明或语句。在声明部分,我们声明变量,在开始和结束部分之间,我们执行操作。
给定一个数字,任务是将数字的每个数字转换为单词。
例子:
Input: 47856
Output: Four Seven Eight Five Six
Input: 123456
Output: one two three four five six
方法是使用解码函数选择特定数字的相应单词。
以下是所需的实现:
DECLARE
-- declare variable are num, num_to_word, str, len, c
-- and in above declare variable num, len, c are integer datatype
-- and num_to_word and str are varchar datatype
num INTEGER;
num_to_word VARCHAR2(100);
str VARCHAR2(100);
len INTEGER;
c INTEGER;
BEGIN
num := 123456;
len := Length(num);
dbms_output.Put_line('Entered Number is: '
||num);
FOR i IN 1..len LOOP
c := Substr(num, i, 1);
SELECT Decode(c, 0, 'Zero ',
1, 'One ',
2, 'Two ',
3, 'Three ',
4, 'Four ',
5, 'Five ',
6, 'Six ',
7, 'Seven ',
8, 'Eight ',
9, 'Nine ')
INTO str
FROM dual;
num_to_word := num_to_word
||str;
END LOOP;
dbms_output.Put_line('Number to words: '
||num_to_word);
END;
-- Program End
输出 :
Entered Number is: 123456
Number to words: One Two Three Four Five Six