From: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
---|---|
To: | Durumdara <durumdara(at)gmail(dot)com>, Ron Johnson <ronljohnsonjr(at)gmail(dot)com> |
Cc: | pgsql-general <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: PLPGSQL - store fetched records in array of record |
Date: | 2025-07-02 16:25:14 |
Message-ID: | 70fdcda5-b4a8-4876-baa4-528cc80e057a@aklaver.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 7/2/25 07:26, Durumdara wrote:
> Sorry.
> I forgot to mention that I have two arrays (records).
>
> One for the modifiable elements, and one for the checkable elements.
>
> If there is a conflict between the actual mod. item and one of the
> checkable items, the checkable item will move to the end of the
> modification list.
> And the actual mod. item starting time could be changed in this process.
>
> First I imagined a temporary table, but I felt this has too much
> overhead against an "in memory" array.
> UPDATE, INSERT, DELETE and reopen after each modification.
Assuming it is installed and you have the necessary permissions there is
plpython3u. As it is Python it is looser on types. As example:
CREATE OR REPLACE FUNCTION public.python_test()
RETURNS void
LANGUAGE plpython3u
AS $function$
rec_list = []
for row in plpy.cursor("select category_fk, cell_per from cell_per where
cell_per > 1"):
rec_list.append({"cat": row["category_fk"], "cp": row["cell_per"]})
plpy.notice(rec_list)
$function$
;
select * from python_test();
NOTICE: [{'cat': 'HERB 3.5', 'cp': 18}, {'cat': 'H PREM 3.5', 'cp':
18}, {'cat': 'HERB 2.5', 'cp': 32}, {'cat': 'H PREM 2.5', 'cp': 32},
{'cat': 'GER SC 3.5', 'cp': 18}, {'cat': 'SUCCULENTS', 'cp': 18}]
python_test
-------------
(1 row)
>
>
> Ron Johnson <ronljohnsonjr(at)gmail(dot)com <mailto:ronljohnsonjr(at)gmail(dot)com>>
> ezt írta (időpont: 2025. júl. 2., Sze, 15:29):
>
> On Wed, Jul 2, 2025 at 8:21 AM Durumdara <durumdara(at)gmail(dot)com
> <mailto:durumdara(at)gmail(dot)com>> wrote:
>
> Hello!
>
> I have to store some fetched records into two lists (arrays) to
> work with them.
>
>
> There's almost certainly a way to do what you need done without
> using arrays. Might require a bit of rethinking, though.
> --
> Death to <Redacted>, and butter sauce.
> Don't boil me, I'm still alive.
> <Redacted> lobster!
>
--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Santhosh S | 2025-07-02 18:28:33 | Foreign Data Wrapper from Oracle to Postgres 16 |
Previous Message | Laurenz Albe | 2025-07-02 16:01:47 | Re: Postgresql support for Windows Server 2025 |