Ibland kan du behöva kontrollera om värde finns i PostgreSQL-arrayen. I den här artikeln kommer vi att titta på hur man kontrollerar om PostgreSQL-arrayen innehåller värde.
Hur man kontrollerar om PostgreSQL-arrayen innehåller värde
Det är mycket enkelt att kontrollera om ett värde finns i en PostgreSQL-array, med hjälp av NÅGON funktion.
Här är syntaxen för ALLA funktion.
value = ANY (array) I ovanstående uttalande måste du ange värdet du vill kontrollera och i vilken array du vill kontrollera dess närvaro/frånvaro. Du kan ange VILKEN funktion som en SELECT-kolumn eller i WHERE-satsen.
Du kan ange arrayen som en bokstavlig med hjälp av runda klammerparenteser och enkla citattecken (t.ex. '{1, 2, 3}'), ett kolumnnamn med arraydatatyp eller till och med en underfråga vars resultat är en array.
Ovanstående påstående returnerar t/f för True/False.
Här är ett enkelt exempel på ALLA påståenden.
postgres=# SELECT 1 = ANY ('{1,2,3}'::int[]);
?column?
----------
t
postgres=# SELECT 4 = ANY ('{1,2,3}'::int[]);
?column?
----------
f
Här är de olika sätten att uppdatera array i PostgreSQL. Låt oss säga att du har följande matriskolumn.
#create table employees (id int,name varchar,sales integer[]);
I exemplet ovan har vi skapat kolumnen försäljning som en matris av heltal.
Låt oss också infoga data i vår matriskolumn.
# 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} Här är SQL-frågan för att endast välja de rader där värde 7 finns i arrayen försäljning
# select * from employees where 7=ANY(sales);
id | name | sales
----+-----------+---------------
1 | John Doe | {9,7,5,4,3,2}
Kontrollera värde i array med Ubiq
Ubiqs rapportverktyg stöder alla ovanstående SQL-frågor och gör det enkelt att visualisera SQL-resultat på olika sätt. Här är SQL-frågan som nämns ovan, i Ubiq. Du kan också plotta SQL-frågeresultat i diagram och instrumentpaneler och dela dem med andra.
Behöver du ett rapporteringsverktyg för PostgreSQL? Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!