将数字转换为字符列表

convert number to list of char

我有一个函数应该 return 字母列表。 我得到了一个 table ,大小正确,里面什么也没有。 我的代码:

CREATE OR REPLACE FUNCTION p_get_list(IN nb integer)
RETURNS TABLE(strconcat text) AS
$BODY$DECLARE
i integer;
j integer;
r integer;
strconc text;

BEGIN
    j=ASCII('A');
    FOR i IN 1..nb LOOP
        r=j+i-1;
        SELECT chr(r) INTO strconc;
        RETURN NEXT;
    END LOOP;
end if;

END;$BODY$

谢谢。

您可以为它重用现有函数 generate_series,例如:

t=# select chr(a) from generate_series(ascii('A'),ascii('A')+25,1) a;
 chr
-----
 A
 B
 C
 D
 E
 F
 G
 H
 I
 J
 K
 L
 M
 N
 O
 P
 Q
 R
 S
 T
 U
 V
 W
 X
 Y
 Z
(26 rows)