sql查询找到第五条记录

时间:2010-10-22 10:51:13

标签: sql

如何使用sql查询在表中找到第五条记录?

6 个答案:

答案 0 :(得分:10)

如果你感到有争议,可以考虑使用“SELECT * FROM table LIMIT 1”并争辩说,由于SQL不承诺以任何特定顺序返回结果,返回的行在灵性上等同于第五行,然后显示你的纹身: “无序集合的第n个元素毫无意义!”

答案 1 :(得分:2)

SELECT TOP 1 * FROM (SELECT TOP 5 * FROM Table T ORDER BY Column ASC) ORDER BY Column Desc

答案 2 :(得分:2)

如果您使用的是SqlServer,则可以使用TOP关键字来实现此目的。

select top 1 * from(
select top 5 * from myTable order by orderingColumn) as A
order by orderingColumn desc

如果您正在使用Oracle,这应该可行(但我现在无法测试)

select *
  from (
    select *, row_number() over (order by orderingColumn) r
      from items
  )
where r = 5; 

答案 3 :(得分:1)

SELECT * FROM table LIMIT 1 OFFSET 4;

答案 4 :(得分:1)

MySQL

中的第五条记录

SELECT * FROM anytable LIMIT ORDER BY id LIMIT 4,1

答案 5 :(得分:0)

对于SQL Server(最近的化身,无论如何),这样的事情应该有效:

SELECT
  *
FROM
  (
    SELECT 
      *, 
      ROW_NUMBER() OVER (ORDER BY the_table.the_column) 'row_num'
    FROM 
      the_table
  ) numbered_rows
WHERE
  row_num = 5

然而,我实际上是对Thomas L Holaday的答案进行了投票:)