Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak mogę uniknąć używania Cursora do implementacji tego pseudokodu - SQL Server?

Zwykle nie można uniknąć pętli, ponieważ wywołujesz EXEC, co nie może być wykonane jako operacja oparta na SET; należy to zrobić jeden po drugim.

Jeśli chcesz ogólnie uniknąć CURSOR, możesz zaimplementować go za pomocą pętli WHILE.

W przeciwnym razie inną opcją jest użycie instrukcji SELECT + FOR XML, która buduje instrukcje EXEC jako pojedynczą instrukcję NVARCHAR(MAX) w zmienną, a następnie EXEC tylko w tym dynamicznym SQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstaw zbiorczy z kwalifikatorem tekstu w SQL Server

  2. sqlsrv_connect:Nie znaleziono nazwy źródła danych i nie określono domyślnego sterownika

  3. T-Sql - Zamów przez na alfanumerycznym

  4. Funkcje okna do zliczania różnych rekordów

  5. Jak grupować relacje hierarchiczne razem w SQL Server