0

有人问我如何从表中获取第 N 行。但是,即使在删除/插入行之后,附加要求也应该保持返回同一行。

我怀疑有办法做到这一点。

但是,如果您有任何想法,请告诉我。提前谢谢。

4

1 回答 1

1

没有表格的“第n”行这样的东西。SQL 表表示无序集。它们没有特定的顺序,除非列指定了顺序。如果您有一个自动递增的列(也称为“序列”或“身份”)或具有默认创建日期的列,那么您可以使用它。如:

select t.*
from (select t.*, row_number() over (order by id) as seqnum
      from table t
     ) t
where t = @NTH;

您将此标记为“rowid”,但没有数据库。您可以在 Oracle 和 SQLite(也可能在其他数据库中)中使用 rowid。然而,这并不一定保证特定的顺序。

于 2014-06-30T02:11:00.840 回答