【发布时间】:2012-09-07 22:00:24
【问题描述】:
我在 MS SQL 数据库中有一个表,其列包含值 1 或 2 或 3
现在我想做一个 ORDER BY 得到这样的记录 1,2,3,1,2,3,1,2,3
这看起来比它更难.. 我已经编程了 10 年,而这个让我陷入困境;-)
有人有什么好主意吗?
【问题讨论】:
-
哪一年?你为什么要这样做?还涉及哪些其他数据?多少行?
-
如果表包含 3 行 1、4 行 2 和 5 行 3,您期望得到什么结果?是什么决定了哪些值为 1 的行是第一个 1,第二个 1,等等?
-
没有更多细节,我会尝试这种通用方法:联合三个选择(每个值 1、2、3 一个)在每个选择中包含一个排名,然后按排名对联合结果进行排序按价值。排名部分见support.microsoft.com/kb/186133
标签: sql sql-server tsql sql-order-by