(sqlserver)用sql语句编写的九九乘法表
DECLARE@i INT
DECLARE@j INT
DECLARE@w INT
DECLARE@sql NVARCHAR(1000)
DECLARE@final NVARCHAR(1000)
SET@i=1
SET@w=0
SET@final=''
WHILE(@i<10)
BEGIN
SET@j=1
SET@sql='SELECT '
WHILE (@j<=@i)
BEGIN
IF(@j<>@i)
BEGIN
SET@sql=@sql+CONVERT(NVARCHAR(50),(@i*@j))+',' END
ELSE
BEGIN
SET@sql=@sql+CONVERT(NVARCHAR(50),(@i*@j))+''
END
SET@j=@j+1
END
IF(@i<>9)
BEGIN
SET@w=9-@i
WHILE(@w>0)
BEGIN
SET@sql=@sql+','+'0'
SET@w=@w-1
END
SET@final+=@sql+' UNION ALL '
END
ELSE
BEGIN
SET@final+=@sql
END
--PRINT @sql
SET@i=@i+1
END
--PRINT @final
EXEC(@final)
DECLARE@i INT
SET@i=1
DECLARE@result NVARCHAR(1000)
DECLARE@j INT
WHILE(@i<=9)
BEGIN
SET@j=1
SET@result=''
WHILE (@j<=@i)
BEGIN
SET@result+=CONVERT(NVARCHAR(50),(@i*@j))+' ' SET@j=@j+1
END
SET@i=@i+1
PRINT@result
END
相关主题