Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Erhöhte Menge jeder Zeile in SQL

Dies hat genau die gleiche Einschränkung wie die Antwort von WadimX, aber es werden 100 Zeilen ausgeführt. Um Ihre Beispielausgabe anhand Ihrer Eingabetabelle zu erzeugen (die ich als example bezeichnen werde ):

;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

Das gibt 5 Zeilen für jeden Datensatz in example zurück , können Sie diese Anzahl erhöhen, indem Sie RowNum < 5 ändern bis 100 oder wie viele Sie wollen.

Ausgabe

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