Re: How to make the generate_series to generate the letter series?

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Ian Lawrence Barwick <barwick(at)gmail(dot)com>
Cc: Wen Yi <896634148(at)qq(dot)com>, pgsql-general <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: How to make the generate_series to generate the letter series?
Date: 2023-05-31 01:04:48
Message-ID: ZHadMD8uySnpxKnS@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, May 29, 2023 at 12:51:15PM +0900, Ian Lawrence Barwick wrote:
> 2023年5月29日(月) 12:39 Wen Yi <896634148(at)qq(dot)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(at)momjian(dot)us> https://momjian.us
EDB https://enterprisedb.com

Only you can decide what is important to you.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2023-05-31 01:13:08 Re: Pg 16: will pg_dump & pg_restore be faster?
Previous Message Randy Needham 2023-05-30 23:17:00 Re: Having issue with SSL.