Обсуждение: psql variable from query result

Поиск
Список
Период
Сортировка

psql variable from query result

От
Gabor Szokoli
Дата:
Hi,

I am looking for a way to store the result of a server-side SQL query in a psql client side variable, so I can use the value in other psql commands.
The simplest workaround I could think up requires a unique temporary file:

SELECT oid_field FROM someTable  \g(:tempfile)
\set var `cat :tempfile`
\lo_export :var :destination


What I really want to do is to extract a file from a bash script on the client side, but the OID must be looked up with a query first.
Is there any better way?

I even tried this, but did not work:

INSERT INTO tempTable (SELECT oid_field FROM someTable);
\lo_export(:LASTOID)

I guess the documentation should say LASTOID contains the oid of the last large object inserted via /lo_insert.

I can of course just invoke psql twice or via expect, but I can't believe I'm the first who tries to do this..


Any ideas apprechiated!

Gabor Szokoli