A volte potrebbe essere necessario verificare se esiste un valore nell'array PostgreSQL. In questo articolo vedremo come verificare se l'array PostgreSQL contiene valore.
Come verificare se l'array PostgreSQL contiene valore
È molto facile verificare se un valore è presente in un array PostgreSQL, usando QUALSIASI funzione.
Ecco la sintassi di QUALSIASI funzione.
value = ANY (array)
Nell'istruzione precedente, è necessario specificare il valore che si desidera controllare e l'array in cui si desidera verificarne la presenza/assenza. È possibile specificare QUALSIASI funzione come colonna SELECT o nella clausola WHERE.
Puoi specificare l'array come valore letterale utilizzando parentesi tonde e virgolette singole (ad es. "{1, 2, 3}"), un nome di colonna con tipo di dati array o anche una sottoquery il cui risultato è un array.
L'istruzione sopra restituirà t/f per Vero/Falso.
Ecco un semplice esempio di ANY istruzione.
postgres=# SELECT 1 = ANY ('{1,2,3}'::int[]); ?column? ---------- t postgres=# SELECT 4 = ANY ('{1,2,3}'::int[]); ?column? ---------- f
Ecco i diversi modi per aggiornare l'array in PostgreSQL. Supponiamo che tu abbia la seguente colonna dell'array.
#create table employees (
id int,
name varchar,
sales integer[]
);
Nell'esempio sopra, abbiamo creato la colonna vendite come matrice di numeri interi.
Inseriamo anche i dati nella nostra colonna dell'array.
# 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}
Ecco la query SQL per selezionare solo le righe in cui il valore 7 è presente nell'array vendite
# select * from employees where 7=ANY(sales); id | name | sales ----+-----------+--------------- 1 | John Doe | {9,7,5,4,3,2}
Controlla il valore nell'array utilizzando Ubiq
Lo strumento Ubiq Reporting supporta tutte le query SQL di cui sopra e semplifica la visualizzazione dei risultati SQL in diversi modi. Ecco la query SQL menzionata sopra, in Ubiq. Puoi anche tracciare i risultati delle query SQL in grafici e dashboard e condividerli con altri.
Hai bisogno di uno strumento di reporting per PostgreSQL? Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!