Created
July 24, 2025 19:10
-
-
Save matejskubic/282e58f80e2697e07bf58ac6adbb7508 to your computer and use it in GitHub Desktop.
SQL generationg many sequential random rows
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- Generate 4M rows using Ben-Gan style with 8-row seed | |
WITH E1(N) AS ( | |
SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 | |
UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 -- 8-row seed | |
), | |
E2(N) AS (SELECT 1 FROM E1 AS a CROSS JOIN E1 AS b), -- 64 rows (8 × 8) | |
E4(N) AS (SELECT 1 FROM E2 AS a CROSS JOIN E2 AS b), -- 4k rows (64 × 64) | |
E8(N) AS (SELECT 1 FROM E4 AS a CROSS JOIN E4 AS b), -- 16M rows (4k x 4k) | |
Numbers AS (SELECT TOP (4000000) ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS n FROM E8) | |
SELECT | |
'Group ' + CAST((n - 1) / 9 + 1 AS VARCHAR(10)) AS G, | |
'Line ' + CAST((n - 1) % 9 + 1 AS VARCHAR(10)) AS Line, | |
n AS RowId, | |
NEWID() AS GuidCol1, | |
NEWID() AS GuidCol2 | |
FROM Numbers |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment