- WITH X AS
- (
- SELECT
- UserName,
- LoginName,
- ROW_NUMBER() OVER (ORDER BY UserName, LoginName) AS rn
- FROM dbo.Sys_User
- ),
- G AS
- (
- SELECT
- ((rn - 1) / 4) + 1 AS ID, -- 序号(每4条一组)
- ((rn - 1) % 4) + 1 AS RunNo, -- 组内序号 1~4
- UserName,
- LoginName
- FROM X
- )
- SELECT
- ID AS 序号,
- MAX(CASE WHEN RunNo = 1 THEN UserName END) AS UserName1,
- MAX(CASE WHEN RunNo = 1 THEN LoginName END) AS LoginName1,
- MAX(CASE WHEN RunNo = 2 THEN UserName END) AS UserName2,
- MAX(CASE WHEN RunNo = 2 THEN LoginName END) AS LoginName2,
- MAX(CASE WHEN RunNo = 3 THEN UserName END) AS UserName3,
- MAX(CASE WHEN RunNo = 3 THEN LoginName END) AS LoginName3,
- MAX(CASE WHEN RunNo = 4 THEN UserName END) AS UserName4,
- MAX(CASE WHEN RunNo = 4 THEN LoginName END) AS LoginName4
- FROM G
- GROUP BY ID
- ORDER BY ID;
复制代码
|
|
hessen