SORU
16 EKİM 2009, Cuma


Tablo T-SQL değişken döngü miyim?

Tablo T-SQL değişken döngü zaten var mı?

DECLARE @table1 TABLE ( col1 int )  
INSERT into @table1 SELECT col1 FROM table2

İmleçler de kullanıyorum ama imleç tablo değişkenlerini daha az esnek gibi görünüyor.

DECLARE cursor1 CURSOR  
    FOR SELECT col1 FROM table2  
OPEN cursor1  
FETCH NEXT FROM cursor1

Bir tablo bir imleç aynı şekilde değişken kullanmak mümkün olmak istiyorum. Bu şekilde tablo üzerinde bazı sorgu prosedürün bir parçası olarak değişken yürütmek, ve daha sonra tablodaki her satır için bir kod değişken yürütmek.

Herhangi bir yardım büyük beğeni topluyor.

CEVAP
16 EKİM 2009, Cuma


Tablo değişkeni için bir kimlik eklemek ve kolay bir döngü @@INSERT-SELECT TOGGLE, 1.

Bunu deneyin:

DECLARE @RowsToProcess  int
DECLARE @CurrentRow     int
DECLARE @SelectCol1     int

DECLARE @table1 TABLE (RowID int not null primary key identity(1,1), col1 int )  
INSERT into @table1 (col1) SELECT col1 FROM table2
SET @RowsToProcess=@@ROWCOUNT

SET @CurrentRow=0
WHILE @CurrentRow<@RowsToProcess
BEGIN
    SET @CurrentRow=@CurrentRow 1
    SELECT 
        @SelectCol1=col1
        FROM @table1
        WHERE RowID=@CurrentRow

    --do your thing here--

END

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • andyabc45

    andyabc45

    1 Mayıs 2011
  • Blunty

    Blunty

    13 Mart 2006
  • Dylan Brenan

    Dylan Brenan

    22 Aralık 2009