Ma to dokładnie takie samo ograniczenie jak odpowiedź WadimX, ale zrobi 100 wierszy. Aby wygenerować przykładowe dane wyjściowe, biorąc pod uwagę tabelę wejściową (którą będę odwoływać się jako 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
To zwraca 5 wierszy dla każdego rekordu w example
, możesz zwiększyć tę liczbę, zmieniając RowNum < 5
do 100
lub ile chcesz.
Wyjście
SNo Name Amount
-----------------------
1 A 1200
2 A 1320
3 A 1452
... ... ...