SQL Server mens du er sløyfe

SQL Server mens du er sløyfe

En stundsløyfe er en av de vanligste sløyfetypene i programmering. Det lar deg utføre en kodeblokk kontinuerlig så lenge en gitt tilstand er sann.

I denne opplæringen vil du lære hvordan du bruker MAS -setningen i SQL -serveren. Denne uttalelsen lar deg sløyfe over en uttalelse basert på en gitt tilstand.

SQL Server Mens uttalelse

Følgende kodebit viser syntaks for MAS -setningen i SQL -serveren:

Mens boolean_ekspression
SQL_Statement | Statement_block | Pause | FORTSETTE

Uttalelsen støtter følgende argumenter:

  1. Boolean_expression - Dette definerer det evaluerte uttrykket. Uttrykket må returnere en boolsk sann eller usant. Hvis uttrykket inneholder en valgt uttalelse, må uttalelsen være vedlagt i et sett med parenteser.
  2. SQL_Statement | SQL_BLOCK - Den definerer SQL -setningen eller blokken som skal utføres mens tilstanden er sann.
  3. GÅ I STYKKER - Break -nøkkelordet lar deg gå ut fra det innerste mens du er sløyfe.
  4. FORTSETTE - Fortsettets nøkkelord lar deg hoppe over den nåværende iterasjonen av mens Loop.

Eksempel 1: Grunnleggende bruk

For bedre å forstå hvordan mens Loop fungerer i SQL -serveren, la oss demonstrere det med et eksempel.

Tenk på kodebiten som er gitt i følgende:

erklære @var int = 1;
mens @var <= 5
begynne
print @var;
set @var = @var + 1;
slutt

I forrige eksempel starter vi med å erklære en variabel med verdien av 1. Vi satte deretter det boolske uttrykket, og sjekket om variabelenes verdi er mindre enn eller lik 5. Hvis det er sant, skriver vi ut variabelenes verdi og øker den med 1. Vi fortsetter å gjøre dette til tilstanden er falsk.

Å kjøre forrige spørring skal skrive ut verdiene fra 1 til 5 som vist i følgende:

1
2
3
4
5
[2022-10-26 23:44:33] Fullført i 19 ms

Eksempel 2: Bruke en stundsløyfe med bordet

Følgende eksempel illustrerer ved hjelp av en stundsløyfe i et bord. Kildetabellen er som følger:

mens (velg AVG (pris) fra produkter)> 300
begynne
Oppdater produkter
Sett pris = pris + 100;
gå i stykker;
slutt;

Det forrige eksemplet bruker en stundsløyfe for å oppdatere tabellen.

Det resulterende tabellen er som følger:

Konklusjon

Dette innlegget dekket grunnleggende om å jobbe med mens Loop i SQL -serveren for å utføre en uttalelse mens en gitt tilstand er sann.