sql >> Database teknologi >  >> RDS >> Sqlserver

Gentag rækker N gange i henhold til kolonneværdi

Du kan bruge en simpel JOIN for at få det ønskede resultat som nedenfor:

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

Ovenstående forespørgsel gentager hver post med det angivne antal i Quantity kolonne.


Bemærkning til master.dbo.spt_values on type = 'P' :
Denne tabel bruges til at få en række tal, som er hårdkodet i den af
betingelse af type = 'P' .



  1. mysql fejlkode 1248

  2. Hvorfor er det hurtigere at udføre lagrede procedurer end SQL-forespørgsler fra et script?

  3. Pl/SQL-indlejret procedureundtagelseshåndtering

  4. MySQL Relationel Division