sql从一个有序表中选择

32 浏览
0 Comments

sql从一个有序表中选择

我想从一个有序表中查询一些记录。

select * from table_name order by something desc limit 4;

这是错误信息(错误在'limit 4'这一行):

ORA-00933: SQL命令没有正确结束
00933. 00000 - "SQL命令没有正确结束"
*原因:
*操作:
错误行:7 列:1

0
0 Comments

问题:从有序表中选择数据的原因和解决方法

在SQL查询中,有时我们需要从一个有序表中选择数据。然而,由于SQL的语法限制,我们不能直接在查询语句中指定从有序表中选择数据的顺序。这可能会导致我们无法按照特定顺序获取所需的数据。

为了解决这个问题,我们可以使用ROWNUM伪列来限制查询返回的行数,并在子查询中对表进行排序。以下是一个示例查询:

select * 
from (SELECT * FROM table_name ORDER BY someval desc)
WHERE ROWNUM < 5;

在这个查询中,我们首先将表按照某个列(someval)进行降序排序,然后使用ROWNUM限制查询结果的行数为4行。这样,我们就可以从有序表中选择特定数量的数据。

通过这种方法,我们可以解决从有序表中选择数据的问题。

0