From: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
---|---|
To: | "caroor(at)yahoo(dot)com" <caroor(at)yahoo(dot)com>, "pgsql-novice(at)lists(dot)postgresql(dot)org" <pgsql-novice(at)lists(dot)postgresql(dot)org> |
Subject: | Re: How to include/reference a common bit of code in a function |
Date: | 2018-06-21 06:51:23 |
Message-ID: | 1529563883.2488.2.camel@cybertec.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
chandru(dot)aroor(at)yahoo(dot)com wrote:
> I have a function that has multiple UNION ALLs. As part of the WHERE condition I
> need to test if any one of 31 columns is true. So right now I have my function looking something like:
>
>
> Insert into Table A (column 1, ... column n) (
> SELECT (column 1, ...column n) from Table B
> WHERE ( column A OR column B OR ...repeated 31 times) = true
> [...]
> My question is there anyway that I can substitute the list of 31 of OR columns
> (always the same 31 column names) in my WHERE clause with a "shortcut" so my code
> is shorter and cleaner. I need to create additional functions for other tables that
> use the same 31 ORs, so trying to find an easy way to reference this list of ORs
> across all my functions. Note, the additional WHERE clauses differ for each of the
> Unions, so I have them numbered 1,2,3 for the first SELECT, 4,5,6 for the second SELECT etc.
It would be shorter to write
WHERE TRUE IN (columnA, columnB, ...)
Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com
From | Date | Subject | |
---|---|---|---|
Next Message | rohan.parkes | 2018-06-22 04:32:08 | pg_restore hangs on materialized view [SEC=UNCLASSIFIED] |
Previous Message | chandru.aroor@yahoo.com | 2018-06-21 01:11:48 | How to include/reference a common bit of code in a function |