按插入的时间对记录排序

Ezi*_*Ezi 0 sql-server sql-server-2005

如何按创建顺序查询数据?

我没有在此表中创建日期的字段.

JNK*_*JNK 6

如果您没有存储插入时间的字段或任何其他有关插入顺序的元数据,则没有可靠的方法来获取此信息.

您可能可能依赖于聚簇索引键,但这些都不能保证.IDENTITY字段或其他自动生成的字段都不是.

为了澄清,一个IDENTITY字段会自动增加,但......

  • 您可以使用插入显式值 IDENTITY_INSERT
  • 您可以重新设定并开始重复使用值
  • 标识字段没有内置的唯一性强制执行

如果ID字段是您的PK,您可以使用它来获得一个粗略的想法:

SELECT *
FROM MyTable
ORDER BY IdField ASC
Run Code Online (Sandbox Code Playgroud)

根据你的评论,该字段是一个GUID.在这种情况下,没有办法返回任何可靠的顺序,因为GUIDs本质上是随机的和非顺序的.