1

我在 MS SQL 数据库中有一个表,其中包含值 1 或 2 或 3

现在我想做一个 ORDER BY 得到这样的记录 1,2,3,1,2,3,1,2,3

这看起来更难了..我已经编程了 10 年了,这个让我陷入困境;-)

有人有什么好主意吗?

4

1 回答 1

8
DECLARE @T TABLE(A INT) 

INSERT @T VALUES(1),(1),(1),(2),(2),(2),(3),(3),(3)

SELECT A FROM (
SELECT ROW_NUMBER() OVER(PARTITION BY A ORDER BY A) R, A
FROM @T
) B
ORDER BY R, A
于 2012-09-07T23:16:38.697 回答