Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Augmentation de la quantité de chaque ligne en sql

Cela a exactement la même limitation que la réponse de WadimX, mais cela fera 100 lignes. Pour produire votre exemple de sortie en fonction de votre table d'entrée (que j'appellerai example ):

;WITH nums AS
   (SELECT 1 AS RowNum, Name, Amount
    FROM (SELECT Name, Amount FROM example) s
    UNION ALL
    SELECT RowNum + 1 As RowNum, Name, CAST(1.1*Amount AS INT) AS Amount
    FROM nums
    WHERE RowNum < 5) 
SELECT RowNum AS SNo, Name, Amount
FROM nums 
ORDER BY Name

SQLFiddle

Cela renvoie 5 lignes pour chaque enregistrement dans example , vous pouvez augmenter ce nombre en modifiant le RowNum < 5 à 100 ou autant que vous voulez.

Sortie

SNo    Name     Amount
-----------------------
1      A        1200
2      A        1320
3      A        1452
...    ...      ...