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

Jak napisać foreach w SQL Server?

Wygląda na to, że chcesz użyć CURSOR . Chociaż w większości przypadków najlepiej jest użyć rozwiązania opartego na zestawie, zdarzają się sytuacje, w których CURSOR to najlepsze rozwiązanie. Nie wiedząc więcej o Twoim prawdziwym problemie, nie możemy Ci więcej pomóc:

DECLARE @PractitionerId int

DECLARE MY_CURSOR CURSOR 
  LOCAL STATIC READ_ONLY FORWARD_ONLY
FOR 
SELECT DISTINCT PractitionerId 
FROM Practitioner

OPEN MY_CURSOR
FETCH NEXT FROM MY_CURSOR INTO @PractitionerId
WHILE @@FETCH_STATUS = 0
BEGIN 
    --Do something with Id here
    PRINT @PractitionerId
    FETCH NEXT FROM MY_CURSOR INTO @PractitionerId
END
CLOSE MY_CURSOR
DEALLOCATE MY_CURSOR


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Funkcja krzyża tabulacji SQL

  2. dołączona baza danych jest tylko do odczytu

  3. Wydajność zwraca rekordy bazy danych przy użyciu LinqToSql?

  4. Jak połączyć się z Microsoft SQL Server 2008 (MSSQL) z Matlaba?

  5. 3 sposoby zwracania wierszy zawierających znaki alfanumeryczne w SQL Server