WHILE-lussen

SQL Server voor gevorderden

Ginger Grant

Instructor

Variabelen gebruiken in T-SQL

  • Variabelen zijn nodig om waarden te zetten

    DECLARE @variablename data_type

    • Moet beginnen met het teken @
SQL Server voor gevorderden

Variabele datatypen in T-SQL

  • VARCHAR(n): tekstveld met variabele lengte
  • INT: gehele waarden van -2,147,483,647 tot +2,147,483,647
  • DECIMAL(p ,s) of NUMERIC(p ,s):
    • p: totaal aantal decimale cijfers dat wordt opgeslagen, links en rechts van de decimale punt
    • s: aantal decimale cijfers rechts van de decimale punt
SQL Server voor gevorderden

Variabelen declareren in T-SQL

-- Declareer Snack als een VARCHAR met lengte 10
DECLARE @Snack VARCHAR(10)
SQL Server voor gevorderden

Waarden toekennen aan variabelen

-- Declareer de variabele
DECLARE @Snack VARCHAR(10)
-- Gebruik SET om een waarde toe te kennen
SET @Snack = 'Cookies'
-- Toon de waarde
SELECT @Snack
+--------------------+ 
|(No column name)    | 
+--------------------+
|Cookies             |
+--------------------+
-- Declareer de variabele
DECLARE @Snack VARCHAR(10)
-- Gebruik SELECT om een waarde toe te kennen
SELECT @Snack = 'Candy'
-- Toon de waarde
SELECT @Snack
+--------------------+ 
|(No column name)    | 
+--------------------+
|Candy               |
+--------------------+
SQL Server voor gevorderden

WHILE-lussen

  • WHILE evalueert een true/false-voorwaarde

  • Na WHILE komt een regel met het sleutelwoord BEGIN

  • Voeg daarna code toe die draait totdat de WHILE-voorwaarde waar is

  • Sluit de code af met het sleutelwoord END

  • BREAK stopt de lus

  • CONTINUE gaat verder met de volgende iteratie

SQL Server voor gevorderden

WHILE-lus in T-SQL (I)

-- Declareer ctr als een integer
DECLARE @ctr INT
-- Ken 1 toe aan ctr
SET @ctr = 1

-- Specificeer de conditie van de WHILE-lus WHILE @ctr < 10
-- Begin de code binnen de WHILE-lus BEGIN -- Verhoog de waarde van @ctr SET @ctr = @ctr + 1 -- Einde WHILE-lus END -- Bekijk de waarde na de lus SELECT @ctr
+--------------------+ 
|(No column name)    | 
+--------------------+
|10                  |
+--------------------+
SQL Server voor gevorderden

WHILE-lus in T-SQL (II)

-- Declareer ctr als een integer
DECLARE @ctr INT
-- Ken 1 toe aan ctr
SET @ctr = 1
-- Specificeer de conditie van de WHILE-lus
WHILE @ctr < 10
    -- Begin de code binnen de WHILE-lus
    BEGIN
       -- Verhoog de waarde van @ctr
       SET @ctr = @ctr + 1
       -- Controleer of ctr gelijk is aan 4
       IF @ctr = 4
           -- Als ctr gelijk is aan 4, stopt de lus
           BREAK
       -- Einde WHILE-lus
    END
SQL Server voor gevorderden

Laten we oefenen!

SQL Server voor gevorderden

Preparing Video For Download...