Låt oss utforska hur den här funktionen fungerar och hur vi kan använda den.
SQL IN-operatör
Följande utdrag visar syntaxen för IN-operatorn.
sökvärde [ INTE ] I värde_uppsättning
värde_uppsättning:
{
( uttryck [ , ... ] )
| ( underfråga )
| SÅVIDA INTE ( array_expression )
}
Funktionen accepterar följande parametrar:
- sökvärde – detta definierar ett uttryck som jämförs med den givna uppsättningen värden.
- value_set – uppsättningen värden från vilken sökvärdet jämförs.
- subquery – beskriver en subquery som returnerar en enda kolumn. Om inga värden returneras är värdeuppsättningen tom.
- UNNEST(array) – returnerar en kolumn med värden från ett givet matrisvärde.
Funktionen returnerar sedan ett booleskt värde. Den returnerar TRUE om ett lika värde finns i den givna uppsättningen och FALSE om annat.
Exempel
Följande exempel visar hur man använder IN-operatorn med kolumndata. Anta att vi har en tabell med exempeldata som visas:
Vi kan använda IN-operatorn för att välja posterna om landet är MySQL eller PostgreSQL.
VÄLJ
*
FRÅN
DATABASER
VAR
SERVER NAMN I ( 'MySQL' , 'PostgreSQL' ) ;
Frågan ovan ska visa de matchande raderna som visas:
Med hjälp av IN-operatorn kan vi också kontrollera om ett värde finns i en given kolumn. Ett exempel visas nedan:
VÄLJ*
FRÅN
DATABASER D
VAR
'MySQL' I ( SERVER NAMN ) ;
I det här fallet kontrollerar vi om värdet 'MySQL' finns i kolumnen server_name. Resultatet är som visas:
Det är bra att komma ihåg att om du angav dubbla värden med IN-operatören. SQL kommer att kassera de identiska värdena och använda ett av dem.
Slutsats
I det här korta inlägget utforskade vi användningen av IN-operatorn i Standard/ANSI SQL. IN-operatorn låter dig kontrollera om ett värde finns inom en uppsättning värden.
Tack för att du läser!!