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

Postgresql - Tableaux de base et array_agg

Le && L'opérateur est un prédicat qui donne un true ou false résultat, pas une liste de valeurs.

Si vous cherchez la liste des order_id qui existent pour les deux client_id=1 et client_id=2 , la requête serait :

 select order_id from simple_table  where client_id in (1,2)
  group by order_id having count(*)=2;

Cela équivaut aux intersections des deux tableaux si vous considérez que ces tableaux sont des ensembles (pas de doublons et les positions des valeurs ne sont pas pertinentes), sauf que vous n'avez pas du tout besoin d'utiliser des tableaux, le SQL standard simple est assez bon.