public inbox for [email protected]  
help / color / mirror / Atom feed
From: Igor Korot <[email protected]>
To: David G. Johnston <[email protected]>
Cc: pgsql-generallists.postgresql.org <[email protected]>
Subject: Re: How to properly use TRIM()?
Date: Sat, 7 Mar 2026 02:11:18 -0600
Message-ID: <CA+FnnTzq6DOL6WWoSsK3M_uzQu0HOisbJ4W7J69Gjky1Xo1rGg@mail.gmail.com> (raw)
In-Reply-To: <CAKFQuwakY0c3x=2o=gQ6Cr7jQ=DgE_snL1cHf8Oj+irO1fmjEQ@mail.gmail.com>
References: <CA+FnnTxGOqF1DN4e70KXRJakuPV_V7_vGonQTX4eEOEE92PCKw@mail.gmail.com>
	<CAKFQuwakY0c3x=2o=gQ6Cr7jQ=DgE_snL1cHf8Oj+irO1fmjEQ@mail.gmail.com>

Hi, David,

On Sat, Mar 7, 2026 at 1:41 AM David G. Johnston
<[email protected]> wrote:
>
> On Saturday, March 7, 2026, Igor Korot <[email protected]> wrote:
>>
>>
>> included, NULLIF( TRIM( c.reloptions ), '' ) AS storage FROM pg_index
>> idx, pg_class c, pg_namespace n, pg_class t, pg_indexes ixs WHERE
>> ixs.indexname = c.relname AND c.oid = idx.indexrelid AND t.oid =
>> idx.indrelid AND n.oid = c.relnamespace AND idx.indisprimary AND
>> n.nspname = 'public' AND t.relname = 'leagues';
>> ERROR:  function pg_catalog.btrim(text[]) does not exist
>> LINE 1: ...num) OFFSET idx.indnkeyatts) AS included, NULLIF( TRIM( c.re...
>>
>
>
> You are asking the wrong question.  The right question is “how does one turn an empty array into the null value?”  Nullif is correct, you just need to specify an empty array (of the correct type) for the second argument.

I don't think pg_class.reloptions is an ARRAY...

draft=# SELECT c.relname AS name, ixs.tablespace, ARRAY(SELECT
a.attname FROM pg_attribute a WHERE a.attrelid = idx.indrelid AND
a.attnum = ANY(idx.indkey) AND a.attnum > 0 ORDER BY
array_position(idx.indkey, a.attnum) OFFSET idx.indnkeyatts) AS
included, c.reloptions AS storage FROM pg_index idx, pg_class c,
pg_namespace n, pg_class t, pg_indexes ixs WHERE ixs.indexname =
c.relname AND c.oid = idx.indexrelid AND t.oid = idx.indrelid AND
n.oid = c.relnamespace AND idx.indisprimary AND n.nspname = 'public'
AND t.relname = 'leagues';
     name     | tablespace | included | storage
--------------+------------+----------+---------
 leagues_pkey |            | {}       |
(1 row)

Included is one, storage is not.

Thank you.

>
> Given that error message, an array of text is the correct type.
>
> Array[]::text[]
>
> David J.
>






reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: How to properly use TRIM()?
  In-Reply-To: <CA+FnnTzq6DOL6WWoSsK3M_uzQu0HOisbJ4W7J69Gjky1Xo1rGg@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox