Fen*_*ang 3 sql-server sorting
假设我有一列 x 的值是 A 和 B。例如:
Row X
1 A
2 A
3 A
4 B
5 B
6 B
Run Code Online (Sandbox Code Playgroud)
现在,我想将它们分类为这种方式:
Row X
1 A
2 B
3 A
4 B
5 A
6 B
Run Code Online (Sandbox Code Playgroud)
当然,我可以新建一个 Column Y。然后将 A 行分配给奇数 (1, 3, 5, ...),将 B 行分配给偶数 (2, 4, 6, ...),然后按 Y 列排序。但是有没有更简单的方法来实现这一目标?
如果答案可以与 MS SQL 一起使用,那将是最好的。
尝试这个:
CREATE TABLE SortTest (val char(1))
INSERT INTO SortTest VALUES
('A'),
('A'),
('A'),
('B'),
('B'),
('B')
SELECT val
FROM SortTest
ORDER BY row_number() OVER (PARTITION BY val ORDER BY val), val
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3599 次 |
最近记录: |