SQL IIF-funksjonen er den nye innebygde Logiske funksjonen som ble introdusert i SQL Server-2012. Vi kan vurdere SQL Server IIF som står måte å skrive OM Andre, og CASE-uttrykk.

SQL Server IIF-funksjonen vil akseptere tre argumenter. Det første argumentet er det Boolske uttrykket, som returnerer true eller false. Hvis IIF uttrykk resultater SANN, så er det andre argumentet vil bli returnert som resultat. Ellers, det tredje argumentet vil returnere som utgang., La oss se syntaksen for SQL Server IIF-funksjonen:

SQL IIF Logisk Funksjon Syntaks:

syntaksen for IIF i SQL Server er som følger:

IIF (Boolean_Expression, True_Value, Flase_Value)

Hvis gitt Boolske uttrykket (eller test tilstand) er sann, så vil den gå tilbake True_Value. Og hvis det er feil, da False_Value vil bli returnert.

SQL IIF å Sammenligne to heltall

Dette eksemplet vil vise deg de arbeider funksjonalitet av IIF-funksjonen i SQL Server

SELECT IIF(10 > 5, 'TRUE', 'FALSE') AS Result;

Fra under skjermbilde, kan du observere at Tilstanden inne i IIF-funksjonen (dvs.,, 10 > 5) er SANN. Så, er det første uttalelse (eller andre argumentet) tilbake som utgang, som er SANT

SQL IIF Sammenligne to heltall variabler

I dette eksemplet, vi kommer til å bruke IIF-funksjonen til å finne ut om personen er kvalifisert til å stemme eller ikke.

Fra under bildet kan du observere det,

  • i Løpet av den første SELECT-setning, tilstand inne i IIF-funksjonen (dvs., 12 > 18) er usann., Så, den andre setningen (eller tredje argumentet) tilbake som output
  • I den andre SELECT-setning, tilstand inne i IIF-funksjonen (dvs., 34 > 18) er sann. Så, er det første uttalelse (eller andre argumentet) tilbake som output

SQL IIF Sammenligne to strenger

I dette eksemplet, vi kommer til å bruke SQL Server IIF-funksjonen for å sammenligne string data. Her brukte vi ‘%’ wildcard inne i den andre SELECT-setning., Så, jeg anbefaler deg å se SQL-SOM artikkelen i SQL Server for videre henvisning.

SQL Nestede IIF eksempel

I dette eksemplet, vi kommer til å bruke Sql Server Nestede IIF-funksjonen til å finne ut om personen er kvalifisert til å arbeide eller ikke.

  1. Første, vi erklærte en heltallsvariabel som kalles @alder og tilordnet noen verdi.
  2. I IIF () – funksjonen, den første betingelsen kontrollerer om alder er mindre enn 18., Hvis denne betingelsen er Sann, så vil den gå tilbake til den første setningen (eller andre argumentet) etter komma, som er Du er for Ung til å Jobbe
  3. Ved den første betingelsen mislykkes, går den tilbake til den andre setningen (eller tredje argumentet). Ved hjelp av SQL Server Nestede IIF, vi sjekker en mer tilstand her (@alder >= 18 OG @alder <= 60)., Hvis denne betingelsen er Sann, så er den returnerer verdi etter første komma, som Du er kvalifisert for Arbeid
  4. Hvis den Nestede tilstand mislykkes, vil det utføre verdi på tredje argument, som er Du er for Gammel til å Arbeide.,

OUTPUT 1: Alder = 12

Alder = 32

Alder = 65

SQL IIF Arbeider med NULL-verdier

Det ville være best hvis du var forsiktig mens du arbeider med NULL-verdier inne i IIF-funksjonen. Følgende rekke eksempler vil hjelpe deg til å forstå konsekvensene.,

SELECT IIF(10 > 5, NULL, NULL) AS Result;

Fra skjermbildet over, kan du se at det er å kaste en feil. Å si at minst en av resultatet uttrykk (dvs., andre eller tredje argumentet etter Boolean_Expression) må være et uttrykk for andre enn NULL konstant., La oss endre dem i henhold til dette og se

SELECT IIF(10 > 5, 'TRUE', NULL) AS Result1;SELECT IIF(10 > 5, NULL, 'FALSE') AS Result2;

SQL IIF NULL-verdier Alternativ 2

Vi kan overvinne de feil som oppstod ved NULL konstanter i IIF-funksjonen ved hjelp av parametrene.

DECLARE @a INT = NULL, @b INT = NULL SELECT IIF ( 10 > 5, @a, @b ) AS Result1;

IIF datatype med høyest prioritet

IIF-funksjonen vil returnere data type med høyest prioritet., Fra følgende eksempel, vil resultatet bli det tredje argumentet (dvs., 100) av type heltall, men resultatet viser 100.00. Fordi IIF-funksjonen vil returnere den med høyest prioritet datatype.

SELECT IIF ( 15 > 50, 12.45, 100 ) AS Result;

Vennligst se HVIS Annet og CASE-uttrykket artikler.

Articles

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *