Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL顺序顺序重复_Sql_Sql Server - Fatal编程技术网

SQL顺序顺序重复

SQL顺序顺序重复,sql,sql-server,Sql,Sql Server,我的sql上有order by zoneId ZoneID | Description | 1 | something | 1 | something | 1 | something | 2 | something | 2 | something | 2 | something | 3

我的sql上有order by zoneId

ZoneID     | Description | 
1          | something   |    
1          | something   | 
1          | something   |             
2          | something   | 
2          | something   |           
2          | something   |     
3          | something   |
3          | something   |
3          | something   |
但我想这样点,这是可能的

ZoneID     | Description  | 
1          | something    |     
2          | something    | 
3          | something    |
1          | something    |   
2          | something    |          
3          | something    |
1          | something    |   
2          | something    |           
3          | something    |

在sql server中,您可以使用

rextester演示:

返回:

+--------+-------------+
| ZoneId | Description |
+--------+-------------+
|      1 | something   |
|      2 | something   |
|      3 | something   |
|      1 | something   |
|      2 | something   |
|      3 | something   |
|      1 | something   |
|      2 | something   |
|      3 | something   |
+--------+-------------+
若要在没有top的情况下无法按顺序排序的视图中使用它,只需添加一列,列号为:


非常感谢,我可以在SQL视图上使用行号吗?我认为SQL视图不能执行行_number@tonydeleon更新了我的答案,包括如何在视图内使用行号和在视图外按顺序排列。非常感谢@SqlZim@tonydeleon很乐意帮忙!
+--------+-------------+
| ZoneId | Description |
+--------+-------------+
|      1 | something   |
|      2 | something   |
|      3 | something   |
|      1 | something   |
|      2 | something   |
|      3 | something   |
|      1 | something   |
|      2 | something   |
|      3 | something   |
+--------+-------------+
create view dbo.with_rownumber as
select 
    ZoneId
  , Description
  , rn = row_number() over (partition by ZoneId order by (select 1))
from t;

go
select ZoneId, Description
from dbo.with_rownumber
order by rn, ZoneId