How to make the generate_series to generate the letter series?
Hi team,
when I study the generate_series function, I found that it can not only generate the number series but also can generate the date series.(ref: https://www.postgresql.org/docs/current/functions-srf.html)
That means I can make the generate_series to generate the letter series.
So I try this command (I guess I can follow the ascil code rule to complete this work):
# SELECT * FROM generate_series('a'::int, 'z'::int, 1);
But the postgres reply me a error, because the 'a' can't translate into 'integer' type.
Can someone provide me a better solution?
Thanks in advance!
Yours,
Wen Yi
2023年5月29日(月) 12:39 Wen Yi <896634148@qq.com>:
Hi team,
when I study the generate_series function, I found that it can not only generate the number series but also can generate the date series.(ref: https://www.postgresql.org/docs/current/functions-srf.html)
That means I can make the generate_series to generate the letter series.So I try this command (I guess I can follow the ascil code rule to complete this work):
# SELECT * FROM generate_series('a'::int, 'z'::int, 1);
But the postgres reply me a error, because the 'a' can't translate into 'integer' type.
Can someone provide me a better solution?
Thanks in advance!
SELECT chr(x + 96) FROM generate_series(1, 26) x
Regards
Ian Barwick
On Mon, May 29, 2023 at 12:51:15PM +0900, Ian Lawrence Barwick wrote:
2023年5月29日(月) 12:39 Wen Yi <896634148@qq.com>:
Hi team,
when I study the generate_series function, I found that it can not only generate the number series but also can generate the date series.(ref: https://www.postgresql.org/docs/current/functions-srf.html)
That means I can make the generate_series to generate the letter series.So I try this command (I guess I can follow the ascil code rule to complete this work):
# SELECT * FROM generate_series('a'::int, 'z'::int, 1);
But the postgres reply me a error, because the 'a' can't translate into 'integer' type.
Can someone provide me a better solution?
Thanks in advance!SELECT chr(x + 96) FROM generate_series(1, 26) x
A working example is:
SELECT chr(x + 96) FROM generate_series(1, 26) as f(x);
Here is a blog entry about more complex examples:
https://momjian.us/main/blogs/pgblog/2012.html#July_24_2012
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com
Only you can decide what is important to you.