Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
如何在SQLServer2008中选择从给定索引开始的记录?_Sql_Sql Server 2008 - Fatal编程技术网

如何在SQLServer2008中选择从给定索引开始的记录?

如何在SQLServer2008中选择从给定索引开始的记录?,sql,sql-server-2008,Sql,Sql Server 2008,我有一个选择,如下所示: (SELECT Id FROM [Samples] Where ForeignKeyId = 4733) -- Returns 2, 5, 7 如果Id的起始值为5,是否可以按如下方式对返回值进行排序:5、7、2 任何帮助都将不胜感激 谢谢 如果我理解得好,我会选择这样的方式 order by case when Id >= 5 then 0 else 1 end, Id 所以 将作为 5, 6, 7, 8, 1, 2, 3, 4 您也可以尝试使用hint

我有一个
选择
,如下所示:

(SELECT Id FROM [Samples] Where ForeignKeyId = 4733) -- Returns 2, 5, 7
如果Id的起始值为5,是否可以按如下方式对返回值进行排序:5、7、2

任何帮助都将不胜感激


谢谢

如果我理解得好,我会选择这样的方式

order by case when Id >= 5 then 0 else 1 end, Id 
所以

将作为

5, 6, 7, 8, 1, 2, 3, 4

您也可以尝试使用hint子句并指向索引名称,这样记录将按照索引的顺序显示(大多数人都会将其排序为asc)

因此您指定5应该是第一个,我们如何知道7和2应该是哪个顺序?这是一个很棒的修复方法!。非常感谢!。OP确实说明了如何按“索引”排序,无论问题是否不同。
5, 6, 7, 8, 1, 2, 3, 4