WHILE-loopar

SQL Server för medelnivå

Ginger Grant

Instructor

Variabler i T-SQL

  • Variabler används för att lagra värden

    DECLARE @variablename data_type

    • Måste börja med tecknet @
SQL Server för medelnivå

Datatyper för variabler i T-SQL

  • VARCHAR(n): textfält med variabel längd
  • INT: heltalsvärden från -2 147 483 647 till +2 147 483 647
  • DECIMAL(p ,s) eller NUMERIC(p ,s):
    • p: totalt antal decimalsiffror som lagras, både till vänster och höger om decimaltecknet
    • s: antal decimalsiffror som lagras till höger om decimaltecknet
SQL Server för medelnivå

Deklarera variabler i T-SQL

-- Declare Snack as a VARCHAR with length 10
DECLARE @Snack VARCHAR(10)
SQL Server för medelnivå

Tilldela variabler värden

-- Declare the variable
DECLARE @Snack VARCHAR(10)
-- Use SET a value to the variable
SET @Snack = 'Cookies'
-- Show the value
SELECT @Snack
+--------------------+ 
|(No column name)    | 
+--------------------+
|Cookies             |
+--------------------+
-- Declare the variable
DECLARE @Snack VARCHAR(10)
-- Use SELECT assign a value
SELECT @Snack = 'Candy'
-- Show the value
SELECT @Snack
+--------------------+ 
|(No column name)    | 
+--------------------+
|Candy               |
+--------------------+
SQL Server för medelnivå

WHILE-loopar

  • WHILE utvärderar ett sant eller falskt villkor

  • Efter WHILE ska det stå ett BEGIN på nästa rad

  • Lägg sedan till koden som ska köras tills villkoret i WHILE-loopen är sant

  • Efter koden lägger du till nyckelordet END

  • BREAK avslutar loopen

  • CONTINUE fortsätter loopen

SQL Server för medelnivå

WHILE-loop i T-SQL (I)

-- Declare ctr as an integer
DECLARE @ctr INT
-- Assign 1 to ctr
SET @ctr = 1

-- Specify the condition of the WHILE loop WHILE @ctr < 10
-- Begin the code to execute inside WHILE loop BEGIN -- Keep incrementing the value of @ctr SET @ctr = @ctr + 1 -- End WHILE loop END -- View the value after the loop SELECT @ctr
+--------------------+ 
|(No column name)    | 
+--------------------+
|10                  |
+--------------------+
SQL Server för medelnivå

WHILE-loop i T-SQL (II)

-- Declare ctr as an integer
DECLARE @ctr INT
-- Assign 1 to ctr
SET @ctr = 1
-- Specify the condition of the WHILE loop
WHILE @ctr < 10
    -- Begin the code to execute inside WHILE loop
    BEGIN
       -- Keep incrementing the value of @ctr
       SET @ctr = @ctr + 1
       -- Check if ctr is equal to 4
       IF @ctr = 4
           -- When ctr is equal to 4, the loop will break
           BREAK
       -- End WHILE loop
    END
SQL Server för medelnivå

Nu kör vi en övning!

SQL Server för medelnivå

Preparing Video For Download...