PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment utiliser l'opérateur Postgresql ANY dans une instruction NOT IN

Quand tu fais

select 2 != any(array[2,3,4]);
 ?column? 
----------
 t

2 sera comparé à tous les éléments du tableau et s'il y en a à quel 2 n'est pas égal, il sera évalué à true .

Utilisez not id = any(array[2,3,4])

select not 1 = any(array[2,3,4]);
 ?column? 
----------
 t

select not 2 = any(array[2,3,4]);
 ?column? 
----------
 f

Ou != all

select 1 != all(array[2,3,4]);
 ?column? 
----------
 t

select 2 != all(array[2,3,4]);
 ?column? 
----------
 f