sql >> Databasteknik >  >> RDS >> Sqlserver

Upprepa rader N gånger enligt kolumnvärde

Du kan använda en enkel JOIN för att få önskat resultat enligt nedan:

SELECT  t1.*, t2.number + 1 RepeatNumber
FROM    TableA t1
JOIN    master.dbo.spt_values t2 ON t2.type = 'P' AND t2.number < t1.Quantity

Ovanstående fråga upprepar varje post med det angivna antalet i Quantity kolumn.


Anmärkning för master.dbo.spt_values on type = 'P' :
Denna tabell används för att få en nummerserie som är hårdkodad i den av
villkor av type = 'P' .



  1. Automatisk ökning av tabell-id med strängkombination i databasen automatiskt

  2. Se till att en PHP-array endast har sekventiella nycklar

  3. Oracle Analytics - partitioner och ordning av sql-frågor

  4. Mysql:ändring i my.cnf träder inte i kraft