Microsoft SQL Server
WHILE loop
Sök…
Anmärkningar
Att använda en WHILE
loop eller annan iterativ process är normalt inte det mest effektiva sättet att bearbeta data i SQL Server.
Du bör föredra att använda en setbaserad fråga på data för att uppnå samma resultat, där det är möjligt
Använd medan loop
WHILE
slingan kan användas som ett alternativ till CURSORS
. Följande exempel kommer att skriva ut nummer från 0 till 99.
DECLARE @i int = 0;
WHILE(@i < 100)
BEGIN
PRINT @i;
SET @i = @i+1
END
Medan slinga med min aggregerad funktionsanvändning
DECLARE @ID AS INT;
SET @ID = (SELECT MIN(ID) from TABLE);
WHILE @ID IS NOT NULL
BEGIN
PRINT @ID;
SET @ID = (SELECT MIN(ID) FROM TABLE WHERE ID > @ID);
END
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow