Sre*_*har 6 sql-server sql-server-2008
在Guid上对记录进行排序的最佳方法是什么?以下从未给出正确的结果.
With UIDs As (--
Select ID = 1, UID = NEWID()
Union Select ID = 2, UID = NEWID()
Union Select ID = 3, UID = NEWID()
Union Select ID = 4, UID = NEWID()
Union Select ID = 5, UID = NEWID()
Union Select ID = 6, UID = NEWID()
Union Select ID = 7, UID = NEWID()
Union Select ID = 8, UID = NEWID()
Union Select ID = 9, UID = NEWID()
Union Select ID = 10, UID = NEWID()
Union Select ID = 11, UID = NEWID()
Union Select ID = 12, UID = NEWID()
Union Select ID = 13, UID = NEWID()
Union Select ID = 14, UID = NEWID()
Union Select ID = 15, UID = NEWID()
Union Select ID = 16, UID = NEWID()
)
Select * From UIDs Order BY UID, ID
Run Code Online (Sandbox Code Playgroud)
而是使用Guid,我如何在我的选择中生成顺序整数.
谢谢
小智 19
SELECT *
FROM myTable
ORDER BY CAST(myGuid AS VARCHAR(36))
Run Code Online (Sandbox Code Playgroud)
不要是最好的答案。
这就解释了SQL Server的方式:SQL Server 如何对GUID进行排序?
您有NEWSEQUENTIALID,但是不能保证可以按预期排序。还有为什么在具有排名功能时使用GUID?
| 归档时间: |
|
| 查看次数: |
6606 次 |
| 最近记录: |