SQL Döngü Kullanımı
5.943 defa okundu
Konu: Veri Analizi
İçindekiler
Bazı durumlarda SQL de belli sayıda sorgu çalıştırmak veya dataset oluşturmak gerekebilir. MS SQL de bu durumlar için while döngüsü kullanılabilir. Aşağıdaki örnekte verilen sayı kadar tekrar eden döngü kurulmuştur. Birinci sorguda her sorgu sonucu bir hareket (transaction) olarak dönecektir. İkinci sorguda ise sonuçlar bir tablo değişkene doldurularak tek bir sonuç kümesi elde edilmiştir. Ayrıca döngü kullanımı sayesinde SQL de hızlı veri dodurma veya hızlı veri üretmek mümkün olabilir.
SQL
- ----SONUÇ BİRDEN ÇOK SATIR OLARAK DÖNER
- DECLARE @Say AS INT
- DECLARE @Sayac AS INT
- SET @Say=5
- SET @Sayac=0
- WHILE @Sayac<@Say
- BEGIN
- SET @Sayac= @Sayac+1
- SELECT @Sayac
- END
- SELECT 'BİTTİ' AS SONUC
Sorgu sonucu
- SAYI
- 1
- SAYI
- 2
- SAYI
- 3
- SAYI
- 4
- SAYI
- 5
- SONUC
- BİTTİ
SQL
- ----SONUÇ TEK BİR TABLO OLARAK DÖNER
- DECLARE @Say AS INT
- DECLARE @Sayac AS INT
- SET @Say=10
- SET @Sayac=0
- DECLARE @TABLO TABLE (SAYI INT,ADI NVARCHAR(20))
- WHILE @Sayac<@Say
- BEGIN
- SET @Sayac= @Sayac+1
- INSERT INTO @TABLO
- SELECT @Sayac AS SAYI,'DENEME'+CONVERT(NVARCHAR(2),@Sayac) AS ADI
- END
- SELECT * FROM @TABLO
- --SONUÇ
| SAYI | ADI |
| 1 | DENEME1 |
| 2 | DENEME2 |
| 3 | DENEME3 |
| 4 | DENEME4 |
| 5 | DENEME5 |
| 6 | DENEME6 |
| 7 | DENEME7 |
| 8 | DENEME8 |
| 9 | DENEME9 |
| 10 | DENEME10 |
Teşekkürler, geri bildiriminiz alındı.