Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie kann ich die Verwendung von Cursor zum Implementieren dieses Pseudocodes vermeiden - SQL Server

Sie können Schleifen normalerweise nicht vermeiden, da Sie EXEC aufrufen, was nicht als SET-basierte Operation ausgeführt werden kann; es muss eins nach dem anderen gemacht werden.

Wenn Sie CURSOR nur generell vermeiden wollen, können Sie es mit einer WHILE-Schleife implementieren.

Andernfalls besteht eine weitere Option darin, eine SELECT + FOR XML-Anweisung zu verwenden, die die EXEC-Anweisungen als einzelne NVARCHAR(MAX)-Anweisung in eine Variable aufbaut und dann nur dieses dynamische SQL EXEC.