Wie nutzt man loops in TSQL?

In TSQL, ich möchte den folgenden code aus zu verwenden hart codiert dhomes, um mit Hilfe einer Schleife für die Optimierung. Mein gescheiterter Versuch am versuchen, fügen Sie eine Schleife ist ebenfalls enthalten.

Declare  @dhome Tinyint, @bp smallint, @lr smallint, @q smallint

    // Set @dhome = 1
  While(@dhome <= 3) // My attempt to add a loop

  SELECT @lr = MAX(NQdDate), @q = NQd
  FROM NQdHistory
  WHERE dhomeId = @dhome 
  GROUP BY NQdDate, NQd

  SELECT @bd = COUNT(*)
  FROM bdhome
  WHERE NQdDate= @lr AND dhomeID= @dhome 

  DELETE FROM ND1 WITH(XLOCK)
  WHERE dhomeID= @dhome  AND NQdDate= @lr

  UPDATE NQdHistory
  SET Nbd = @q - @@RowCount - @bp, NBd = @bp
  WHERE NQdDate= @lr AND dhomeID= @dhome 

  Set @dhome = @dhome +1 //My attempt to end a loop
  • Sie benötigen eine Start-und ENDE unter Ihrem während
InformationsquelleAutor user1880670 | 2013-04-02
Schreibe einen Kommentar