您的位置:首页 > 其它

枚举N行N列的自然数列

2015-08-06 21:05 423 查看
数据库环境:SQL SERVER 2005

现有一个需求,要枚举1-50个自然数,分10行5列展示。如图,

/*枚举1-50的自然数列*/
WITH    x0
AS ( SELECT   number
FROM     master..spt_values
WHERE    type = 'P'
AND number >= 1
AND number <= 50
)
/*行转列*/
SELECT  ( number - 1 ) / 5 + 1 AS 行号 ,
MAX(CASE WHEN number % 5 = 1 THEN number
END) AS 第一列 ,
MAX(CASE WHEN number % 5 = 2 THEN number
END) AS 第二列 ,
MAX(CASE WHEN number % 5 = 3 THEN number
END) AS 第三列 ,
MAX(CASE WHEN number % 5 = 4 THEN number
END) AS 第四列 ,
MAX(CASE WHEN number % 5 = 0 THEN number
END) AS 第五列
FROM    x0
GROUP BY ( number - 1 ) / 5


View Code
很简单。

(本文完)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: