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

Powtórz wiersze N ​​razy zgodnie z wartością kolumny

Możesz użyć prostego JOIN aby uzyskać pożądany wynik, jak poniżej:

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

Powyższe zapytanie powtarza każdy rekord o określoną liczbę w Quantity kolumna.


Uwaga dotycząca master.dbo.spt_values on type = 'P' :
Ta tabela służy do pobierania serii liczb, które są w niej zakodowane na stałe przez
warunek type = 'P' .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak korzystać z właściwości IDENTITY() w SQL Server

  2. Wystąpił błąd związany z siecią lub specyficzny dla instancji podczas nawiązywania połączenia z SQL Server

  3. Nie można znaleźć pliku microsoft.sqlserver.batchparser.dll

  4. LPAD w SQL Server 2008

  5. Dostęp do kolumn tabeli według indeksu zamiast nazwy w procedurze składowanej SQL Server