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

Comment vérifier si le tableau PostgreSQL contient une valeur

Parfois, vous devrez peut-être vérifier si la valeur existe dans le tableau PostgreSQL. Dans cet article, nous verrons comment vérifier si le tableau PostgreSQL contient une valeur.



Comment vérifier si le tableau PostgreSQL contient une valeur

Il est très facile de vérifier si une valeur est présente dans un tableau PostgreSQL, en utilisant la fonction ANY.

Voici la syntaxe de TOUTE fonction.

value = ANY (array)

Dans l'instruction ci-dessus, vous devez spécifier la valeur que vous souhaitez vérifier et le tableau dans lequel vous souhaitez vérifier sa présence/absence. Vous pouvez spécifier N'IMPORTE QUELLE fonction en tant que colonne SELECT ou dans la clause WHERE.

Vous pouvez spécifier le tableau en tant que littéral en utilisant des accolades et des guillemets simples (par exemple, '{1, 2, 3}'), un nom de colonne avec un type de données de tableau, ou même une sous-requête dont le résultat est un tableau.

L'instruction ci-dessus renverra t/f pour Vrai/Faux.

Voici un exemple simple d'instruction ANY.

postgres=# SELECT 1 = ANY ('{1,2,3}'::int[]);
 ?column?
----------
 t

postgres=# SELECT 4 = ANY ('{1,2,3}'::int[]);
 ?column?
----------
 f

Voici les différentes façons de mettre à jour un tableau dans PostgreSQL. Disons que vous avez la colonne de tableau suivante.

# create table employees ( 
     id int, 
     name varchar, 
     sales integer[] 
);

Dans l'exemple ci-dessus, nous avons créé la colonne ventes sous la forme d'un tableau d'entiers.

Insérons également des données dans notre colonne tableau.

# insert into employees (id, name, sales)
          values (1, ' John Doe', ARRAY [9,7,5,4,3,2]),
                 (2, ' Jim Day', ARRAY [8,6,3,2,9,2]);

# select * from employees;
 id |   name    |     sales
----+-----------+---------------
  1 |  John Doe | {9,7,5,4,3,2}
  2 |  Jim Day  | {8,6,3,2,9,2}

Voici la requête SQL pour sélectionner uniquement les lignes où la valeur 7 est présente dans le tableau ventes

# select * from employees where 7=ANY(sales);
 id |   name    |     sales
----+-----------+---------------
  1 |  John Doe | {9,7,5,4,3,2}


Vérifier la valeur dans le tableau à l'aide d'Ubiq

L'outil Ubiq Reporting prend en charge toutes les requêtes SQL ci-dessus et facilite la visualisation des résultats SQL de différentes manières. Voici la requête SQL mentionnée ci-dessus, dans Ubiq. Vous pouvez également tracer les résultats des requêtes SQL dans des graphiques et des tableaux de bord, et les partager avec d'autres.

Besoin d'un outil de reporting pour PostgreSQL ? Ubiq facilite la visualisation des données en quelques minutes et la surveillance dans des tableaux de bord en temps réel. Essayez-le aujourd'hui !