SQL IN operatør

Sql In Operator



'Dette indlæg vil undersøge, hvordan man bruger IN-operatoren i Standard eller ANSI SQL. IN-operatoren giver dig mulighed for at kontrollere for en ens værdi i et givet sæt værdier.'

Lad os undersøge, hvordan denne funktion fungerer, og hvordan vi kan bruge den.

SQL IN operatør

Det følgende uddrag viser syntaksen for IN-operatoren.







søgeværdi [ IKKE ] I værdi_sæt

værdisæt:
{
( udtryk [ , ... ] )
| ( underforespørgsel )
| MED MINDRE ( array_expression )
}

Funktionen accepterer følgende parametre:



  1. søgeværdi – dette definerer et udtryk, der sammenlignes med det givne sæt værdier.
  2. værdisæt – det sæt værdier, som søgeværdien sammenlignes ud fra.
  3. underforespørgsel – beskriver en underforespørgsel, der returnerer en enkelt kolonne. Hvis der ikke returneres nogen værdier, er værdisættet tomt.
  4. UNNEST(matrix) – returnerer en kolonne med værdier fra en given matrixværdi.

Funktionen returnerer derefter en boolsk værdi. Det returnerer SAND, hvis der findes en ens værdi i det givne sæt og FALSK, hvis ellers.



Eksempler

Det følgende eksempel viser, hvordan man bruger IN-operatoren med kolonnedata. Antag, at vi har en tabel med eksempeldata som vist:





Vi kan bruge IN-operatøren til at vælge posterne, hvis landet er MySQL eller PostgreSQL.



VÆLG
*
FRA
DATABASER
HVOR
SERVER NAVN I ( 'MySQL' , 'PostgreSQL' ) ;

Forespørgslen ovenfor skal vise de matchende rækker som vist:

Ved hjælp af IN-operatoren kan vi også kontrollere, om der findes en værdi i en given kolonne. Et eksempel er vist nedenfor:

VÆLG
*
FRA
DATABASER D
HVOR
'MySQL' I ( SERVER NAVN ) ;

I dette tilfælde kontrollerer vi, om værdien 'MySQL' findes i kolonnen server_name. Resultatet er som vist:

Det er godt at huske på, at hvis du har angivet duplikerede værdier med IN-operatøren. SQL vil kassere de identiske værdier og bruge en af ​​dem.

Konklusion

I dette korte indlæg undersøgte vi brugen af ​​IN-operatoren i Standard/ANSI SQL. IN-operatoren giver dig mulighed for at kontrollere, om der findes en værdi inden for et sæt værdier.

Tak fordi du læste med!!