Principale utente con più risposte
[T-SQL]Selezionare "colonna" da riga restituita dal cursore

Domanda
-
Risposte
-
Come faccio a selezionare un campo solo per ad esempio inserirlo in un'altra tabella con un update?
Potresti utilizzare:FETCH NEXT FROM <cursor> INTO @Col_1, @Col_2
ovviamente dopo aver dichiarato @Col_1 e @Col_2, qui trovi alcuni esempi.
In generale, però, ti sconsiglio di utilizzare cursori perchè costringono SQL Server ad effettuare operazioni row-by-row e non set-based...
Dal tuo post non è chiaro lo scenario, però se devi solo fare un update su un'altra tabella potresti utilizzare UPDATE FROM.
Se proprio non puoi fare a meno del cursore, valuta di applicare le opzioni di ottimizzazione come FAST_FORWARD, LOCAL e READ_ONLY.
Ciao!
Sergio Govoni
SQL Server MVP
MVP Profile: https://mvp.support.microsoft.com/profile/Sergio.Govoni
Blog: http://community.ugiss.org/blogs/sgovoni- Modificato Sergio GovoniMVP, Moderator martedì 25 ottobre 2011 23:45
- Proposto come risposta Irina Turcu giovedì 27 ottobre 2011 10:53
- Contrassegnato come risposta Lorenzo BenagliaModerator sabato 29 ottobre 2011 15:39
Tutte le risposte
-
Come faccio a selezionare un campo solo per ad esempio inserirlo in un'altra tabella con un update?
Potresti utilizzare:FETCH NEXT FROM <cursor> INTO @Col_1, @Col_2
ovviamente dopo aver dichiarato @Col_1 e @Col_2, qui trovi alcuni esempi.
In generale, però, ti sconsiglio di utilizzare cursori perchè costringono SQL Server ad effettuare operazioni row-by-row e non set-based...
Dal tuo post non è chiaro lo scenario, però se devi solo fare un update su un'altra tabella potresti utilizzare UPDATE FROM.
Se proprio non puoi fare a meno del cursore, valuta di applicare le opzioni di ottimizzazione come FAST_FORWARD, LOCAL e READ_ONLY.
Ciao!
Sergio Govoni
SQL Server MVP
MVP Profile: https://mvp.support.microsoft.com/profile/Sergio.Govoni
Blog: http://community.ugiss.org/blogs/sgovoni- Modificato Sergio GovoniMVP, Moderator martedì 25 ottobre 2011 23:45
- Proposto come risposta Irina Turcu giovedì 27 ottobre 2011 10:53
- Contrassegnato come risposta Lorenzo BenagliaModerator sabato 29 ottobre 2011 15:39
-
Ti ringrazio.
In sostanza penso di essere obbligato ad utilizzare i cursori, in quanto è una situazione alquanto complicata e con l'update classica non sono riuscito a venirne fuori.
Comunque indago un po' su questa update from...se ho altri dubbi ti scrivo. Grazie ancora!