Bilindiği üzere programlama dillerinde belirli aralıktaki belirli düzene sahip dizi tipindeki değerleri yazdırmak için çeşitli döngüler mevcuttur. Bu döngülerden birisi de While döngüsüdür. Biraz daha açıklama yapmak gerekirse; "Belirli bir koşul sağlanıncaya kadar ilerle, ilerlerken şunları yap. Koşul sağlanınca olayı bitir."
Şimdi ise kullanım şekline bakalım
WHILE (Gidilecek Son Sınır)
BEGIN
// Burada uygun koşulları sağlayan değerlerle işlemler yapmak;
END
Örnek 1
DECLARE @SAYAC INT = 0
WHILE @SAYAC < 20
BEGIN
PRINT @SAYAC
SET @SAYAC = @SAYAC + 1
END
Örnek 1 Çıktısı
Örnek 2
DECLARE @SAYAC INT = 500
WHILE @SAYAC > 40
BEGIN
PRINT @SAYAC
SET @SAYAC = @SAYAC - 60
END
Örnek 2 Çıktısı
Örnek 3
DECLARE @Yazi VARCHAR(50) = 'BU MAKALE GAYET GÜZEL'
DECLARE @KarakterSayisi INT = LEN(@Yazi)
DECLARE @SAYAC INT = 0
WHILE @SAYAC <= @KarakterSayisi
BEGIN
PRINT SUBSTRING(@Yazi, @SAYAC, 1)
SET @SAYAC = @SAYAC + 1
END
Örnek 3 Çıktısı
Bol döngülü seyirler.
Kaynak: https://www.ontedi.com/sql/sql-serverda-while-dongusu-ornekleri