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

forespørgsel, der vil duplikere poster baseret på antal

Testdata

CREATE TABLE Test_Table( PartNumber VARCHAR(20) , Quantity INT, [Description] VARCHAR(20), Category VARCHAR(20), Size VARCHAR(20), Tags VARCHAR(20))GOINSERT INTO Test_Table VALUES( 'Del 100', 3, 'Beskrivelse 100', 'Cat100', 'Size100', 'Tag100'),('Del 101', 2,'Description 101', 'Cat101', 'Size101', 'Tag101') GO 

Forespørgsel

;MED CTE (Vals) AS ( SELECT 1 UNION ALL SELECT 1 + Vals FROM CTE WHERE Vals <99 )SELECT A.PartNumber , 1 AS QTY ,A.Category ,A.[Description] ,A. Størrelse ,A.TagsFRA Test_Tabel A INNER JOIN CTE C ON C.Vals <=A.QuantityORDER BY A.PartNumber

Resultatsæt

╔════════════╦═════╦══════════════╦═════╦═════════════════════════ ════╦═════════╦════════╗║ Partnumber ║ Antal ║ Kategori ║ Beskrivelse ║ Størrelse ║ Tags ║╠════════════ ╬═════╬══════════╬═════════════════╬═════════╬════ ════╣║ Del 100 ║ 1 ║ CAT100 ║ Beskrivelse 100 ║ Størrelse100 ║ TAG100 ║║ Del 100 ║ 1 ║ CAT100 ║ Beskrivelse 100 ║ Størrelse100 ║ TAG100 ║║ Del 100 ║ 1 ║ CAT100 ║ Beskrivelse 100 ║ Størrelse100 ║ TAG100 ║ ║ Del 101 ║ 1 ║ CAT101 ║ Beskrivelse 101 ║ Størrelse101 ║ Tag101 ║║ Del 101 ║ 1 ║ CAT101 ║ Beskrivelse 101 ║ Størrelse101 ║ TAG101 ║╚════════════╩═════╩ ═║ kode> 


  1. SQL Server Express database replikering/synkronisering

  2. Skrivning af en csv-fil til SQL Server-database ved hjælp af python

  3. Brug af et array i en SQL-forespørgsel

  4. mysql ændrer unik nøgle til primær (mariadb)