Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come posso evitare di usare il cursore per implementare questo pseudo codice - SQL Server

Normalmente non è possibile evitare il ciclo poiché si chiama EXEC, cosa che non può essere eseguita come operazione basata su SET; deve essere fatto uno per uno.

Se vuoi semplicemente evitare CURSOR in generale, puoi implementarlo usando un ciclo WHILE.

Altrimenti, un'altra opzione consiste nell'usare un'istruzione SELECT + FOR XML che costruisce le istruzioni EXEC come una singola istruzione NVARCHAR(MAX) in una variabile, quindi EXEC solo quell'SQL dinamico.