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

Verifique se o valor existe no array Postgres


Mais simples com o ANY construir:
SELECT value_variable = ANY ('{1,2,3}'::int[])

O operando direito de ANY (entre parênteses) pode ser um conjunto (resultado de uma subconsulta, por exemplo) ou uma matriz . Existem várias maneiras de usá-lo:
  • SQLAlchemy:como filtrar os tipos de coluna PgArray?
  • IN vs operador ANY no PostgreSQL

Importante diferença:operadores de matriz (<@ , @> , && et al.) esperar matriz tipos como operandos e suportam índices GIN ou GiST na distribuição padrão do PostgreSQL, enquanto o ANY construção espera um elemento digite como operando esquerdo e não suporta esses índices. Exemplo:
  • Índice para encontrar um elemento em uma matriz JSON

Nada disso funciona para NULL elementos. Para testar NULL :
  • Verifique se NULL existe no array Postgres