Smyčky WHILE

Intermediate SQL Server

Ginger Grant

Instructor

Použití proměnných v T-SQL

  • Proměnné slouží k ukládání hodnot

    DECLARE @variablename data_type

    • Musí začínat znakem @
Intermediate SQL Server

Datové typy proměnných v T-SQL

  • VARCHAR(n): textové pole s proměnnou délkou
  • INT: celá čísla od -2 147 483 647 do +2 147 483 647
  • DECIMAL(p ,s) nebo NUMERIC(p ,s):
    • p: celkový počet desetinných číslic uložených vlevo i vpravo od desetinné tečky
    • s: počet desetinných číslic uložených vpravo od desetinné tečky
Intermediate SQL Server

Deklarace proměnných v T-SQL

-- Declare Snack as a VARCHAR with length 10
DECLARE @Snack VARCHAR(10)
Intermediate SQL Server

Přiřazování hodnot proměnným

-- 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               |
+--------------------+
Intermediate SQL Server

Smyčky WHILE

  • WHILE vyhodnocuje podmínku pravda/nepravda

  • Za WHILE musí následovat řádek s klíčovým slovem BEGIN

  • Dále vložte kód, který se spustí, dokud je podmínka splněna

  • Za kódem přidejte klíčové slovo END

  • BREAK způsobí ukončení smyčky

  • CONTINUE způsobí pokračování smyčky

Intermediate SQL Server

Smyčka WHILE v 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                  |
+--------------------+
Intermediate SQL Server

Smyčka WHILE v 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
Intermediate SQL Server

Pojďme si procvičit!

Intermediate SQL Server

Preparing Video For Download...