Hi

pá 29. 10. 2021 v 19:21 odesílatel Philip Semanchuk <
phi...@americanefficient.com> napsal:

> Hi,
> I would appreciate help with the syntax for querying an array of strings
> declared as a psql variable. Here's an example.
>
> \set important_days ARRAY['monday', 'friday']
>
> select 1 where 'monday' = ANY(:important_days);
> ERROR:  42703: column "monday" does not exist
> LINE 1: select 1 where 'monday' = ANY(ARRAY[monday,friday]);
>
> select 1 where 'monday' = ANY(:"important_days");
> ERROR:  42703: column "ARRAY[monday,friday]" does not exist
> LINE 1: select 1 where 'monday' = ANY("ARRAY[monday,friday]");
>
> I'm doing something wrong but I can't figure out what.
>
> My real-world use case is that I have a psql script that will execute
> several queries on a long list of strings, and rather than repeat those
> strings over and over in the script, I'd like to declare them once at the
> top of the script and then refer to the variable after that. Bonus points
> if there's a way to do a multiline declaration like --
>
> \set important_days ARRAY['monday',
>                           'friday']
>
> Thanks for reading
> Philip
>

psql variables can hold only text. There is not any type - all is just text.

Regards

Pavel

Reply via email to