On Sat, 2025-07-26 at 15:13 -0400, Igor Korot wrote:
> On Sat, Jul 26, 2025, 2:14 PM Christophe Pettus <xof@thebuild.com> wrote:
> > > I want to know all individual things:
> > > - whether the index is unique.
> > > - what type of index it is
> > > - whether the field is ASC or DESC.
> > > - all other individual arams
> >
> > pg_index is the source for those. The one exception is the access method for the index, which is in pg_class.
>
> I didn't find the sorting for the field.
That's in pg_index.indoption.
The flags stored there are defined in src/include/catalog/pg_index.h
/*
* Index AMs that support ordered scans must support these two indoption
* bits. Otherwise, the content of the per-column indoption fields is
* open for future definition.
*/
#define INDOPTION_DESC 0x0001 /* values are in reverse order */
#define INDOPTION_NULLS_FIRST 0x0002 /* NULLs are first instead of last */
So a value of 3 would mean DESC NULLS FIRST.
Yours,
Laurenz Albe