Rather use a recursive cte to create your numbers.
WITH cte AS (
SELECT 1 as Num
UNION ALL
SELECT Num + 1 FROM cte WHERE Num < 52
)
SELECT * FROM cte
This method works well for populating Calendar tables, too.
But if you insist on using an existing table, sys.columns is just about guaranteed to always have enough entries.