Sql 开始显示第二行的结果

Sql 开始显示第二行的结果,sql,database,Sql,Database,我有一个简单的问题:我想知道如何从第二条记录开始显示数据库中的记录 谢谢大家! 试试这个: select * from (select *, ROW_NUMBER() over (order by TableId) as rn from TableName) dane where rn>1 在MSSQL中。如果有一列指定了顺序,则ANSI标准方法是: select t.* from table t order by col offset 1 row; 有问题吗?说真的,你的问题根本不包

我有一个简单的问题:我想知道如何从第二条记录开始显示数据库中的记录

谢谢大家!

试试这个:

select * from
(select
*,
ROW_NUMBER() over (order by TableId) as rn
from TableName) dane where rn>1

在MSSQL中。

如果有一列指定了顺序,则ANSI标准方法是:

select t.*
from table t
order by col
offset 1 row;

有问题吗?说真的,你的问题根本不包含任何信息。使用什么DBMS MySQL、SQL Server、Oracle等,以及什么版本?此答案将因您使用的内容而大不相同。此查询选择*FROM images LIMIT 1;返回第一个元素。。。我想知道是否有一个查询返回从第二个oneTables开始的recrods表示无序集。没有第二张唱片。也不是第一张唱片。也不是最后的记录。你需要一个列来指定排序。因为你的最后一个问题是用MySQL标记的,我想你需要-SELECT*FROM images order by LIMIT 1,1;-有关如何使用限制的进一步阅读,请参阅,您甚至可以通过以下方式跳过订单。。。与限制1相反。@jarlh您可以跳过顺序,但这会使您的查询变得不确定,而且很可能毫无用处。@GarethD,我知道,但问题是要从限制1中选择*继续。@jarlh。你的坏习惯。使用没有order by的limit是危险的,因为结果集中的行顺序是不确定的。表格表示无序的集合。结果集没有确定的顺序,除非您使用order by指定它。@jarlh。这没什么区别。只需返回查询中的行。如果没有order by,则无法保证排序,或者两次执行查询将返回相同的结果。换句话说,您需要修复原始查询以决定按什么排序,然后在MySQL中使用limit/offset。