Postgres - повторение элемента N массива - PullRequest
0 голосов
/ 24 мая 2019

Например, если элемент 'hi', а N равен 3, мне нужен фрагмент PostgreSQL, который я могу использовать в запросе SELECT, который возвращает следующий массив:

['hi', 'hi', 'hi']

Ответы [ 2 ]

0 голосов
/ 24 мая 2019

Вы можете использовать array_agg с generate_series

select array_agg(s) from ( values('hi')) as t(s) cross join generate_series(1,3)

Универсальный

select array_agg(s) from ( values(:elem)) as t(s) cross join generate_series(1,:n)

DEMO

0 голосов
/ 24 мая 2019

sql demo

with cte as (
  select 'hi' as rep_word, generate_series(1, 3) as value
)                                         -- ^^^ n = 3
select array(SELECT rep_word::text from cte);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...