sql >> Databasteknik >  >> RDS >> PostgreSQL

Kontrollera om det finns ett värde i Postgres-arrayen

Enklare med ANY konstruera:

SELECT value_variable = ANY ('{1,2,3}'::int[])

Den högra operanden av ANY (mellan parenteser) kan antingen vara en uppsättning (resultat av en underfråga, till exempel) eller en array . Det finns flera sätt att använda det:

  • SQLAlchemy:hur filtrerar man på PgArray-kolumntyper?
  • IN vs ALLA operatör i PostgreSQL

Viktigt skillnad:Arrayoperatorer (<@ , @> , && et al.) förväntar sig array Typer som operander och stöder GIN- eller GiST-index i standarddistributionen av PostgreSQL, medan ANY konstruktion förväntar sig ett element skriv som vänster operand och stöder inte dessa index. Exempel:

  • Index för att hitta ett element i en JSON-array

Inget av detta fungerar för NULL element. För att testa för NULL :

  • Kontrollera om NULL finns i Postgres-arrayen


  1. Ändra en inloggnings standardspråk i SQL Server

  2. ~/.psqlrc-fil för DBA:er

  3. Hur man exporterar frågeresultat till en CSV-fil i SQL Developer (Oracle)

  4. Vad är logisk ELLER-operatör i SQL Server - SQL Server / TSQL Tutorial Del 119