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

Bagaimana saya bisa memperluas satu baris menjadi beberapa set hasil baris?

Anda dapat menggunakan CTE rekursif:

;WITH CTE AS
(
    SELECT *
    FROM YourTable
    UNION ALL 
    SELECT id, pcs-1
    FROM CTE
    WHERE pcs-1 >= 1
)
SELECT *
FROM CTE
ORDER BY id, pcs
OPTION(MAXRECURSION 0)

Ini demonya untuk Anda coba.



  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 menghindari pengkodean karakter saat menggunakan FOR XML PATH?

  2. Memecahkan Masalah saat Bekerja dengan Tanggal dan Waktu di SQL Server

  3. Protokol Konfigurasi Jaringan Server Sql Tidak Tersedia

  4. Izin SQL untuk Menambahkan data dan bagaimana cara memverifikasi?

  5. Bagaimana cara mengubah bahasa default untuk SQL Server?