Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

SQL Server UNTUK SETIAP Loop

Berikut adalah opsi dengan variabel tabel:

DECLARE @MyVar TABLE(Val DATETIME)
DECLARE @I INT, @StartDate DATETIME
SET @I = 1
SET @StartDate = '20100101'

WHILE @I <= 5
BEGIN
    INSERT INTO @MyVar(Val)
    VALUES(@StartDate)

    SET @StartDate = DATEADD(DAY,1,@StartDate)
    SET @I = @I + 1
END
SELECT *
FROM @MyVar

Anda dapat melakukan hal yang sama dengan tabel temp:

CREATE TABLE #MyVar(Val DATETIME)
DECLARE @I INT, @StartDate DATETIME
SET @I = 1
SET @StartDate = '20100101'

WHILE @I <= 5
BEGIN
    INSERT INTO #MyVar(Val)
    VALUES(@StartDate)

    SET @StartDate = DATEADD(DAY,1,@StartDate)
    SET @I = @I + 1
END
SELECT *
FROM #MyVar

Anda harus memberi tahu kami apa tujuan utama Anda, seperti yang dikatakan oleh @JohnFx, ini mungkin bisa dilakukan dengan cara lain (lebih efisien).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menambahkan properti identitas ke kolom yang ada di SQL Server?

  2. Bagaimana cara membandingkan 2 baris dari tabel yang sama (SQL Server)?

  3. Kunci variabel dalam Tugas Skrip menggunakan C #

  4. Output database yang tidak terduga saat menggunakan INNER JOIN

  5. Cara cepat menulis Select Query di SQL Server - Tutorial SQL Server / TSQL Bagian 108