PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Postgres Array Append &Array Length for 'Array Push'


O mais simples seria:
update table
set array = array_append(array, 'element')
where ...

ou talvez use o || operador :
update table
set array = array || 'element'
where ...

Ambos são equivalentes ao mais comum set n = n + 11 para números. Dependendo dos tipos envolvidos, talvez seja necessário desambiguar quais || operador você quer dizer incluindo um typecast:
update table
set array = array || 'element'::text
where ...

para que o PostgreSQL saiba que você quer o array array || element versão do || em vez da matriz array || array versão. Obrigado a ak5 por trazer isso à minha atenção.