一、准备基础数据
(1)创建辅助表,方便以后倾向于Set-base方式解决问题
-- Creating and Populating the Nums Auxiliary Table SET NOCOUNT ON; IF OBJECT_ID(‘dbo.Nums‘, ‘U‘) IS NOT NULL DROP TABLE dbo.Nums; CREATE TABLE dbo.Nums(n INT NOT NULL PRIMARY KEY); DECLARE @max AS INT , @rc AS INT; SET @max = 1000000; SET @rc = 1; INSERT INTO dbo.Nums ( n ) VALUES ( 1 ); WHILE @rc * 2 <= @max BEGIN INSERT INTO dbo.Nums ( n ) SELECT n + @rc FROM dbo.Nums; SET @rc = @rc * 2; END INSERT INTO dbo.Nums ( n ) SELECT n + @rc FROM dbo.Nums WHERE n + @rc <= @max; GO
时间: 2024-10-14 12:43:56