在PLSQL中怎么能取到表中按ID降序排列的前十条记录???

我的语句如下:select*fromtestorderbyiddesclimit10;或者selecttop10*fromtestorderbyiddesc;但是这两条语... 我的语句如下:select * from test order by id desc limit 10;或者 select top 10 * from test order by id desc; 但是这两条语句我执行了怎么系统老报脚本未正确结束的错误。。。我想确定两个问题: 1. 这两条语句是否适用于PL/SQL? 2.如果不适用那么还有其它更好的语句么? 请教高人指点!十分感谢~~ 展开
 我来答
有振贾觅露
2020-02-06 · TA获得超过3636个赞
知道大有可为答主
回答量:3003
采纳率:24%
帮助的人:384万
展开全部
select
top
10
*
from
test
order
by
id
desc;
oracle
中没有
top
这个关键字
如果你想在oracle中查处前世条
需要这样
select
*
from
(
select
*
from
test
order
by
id
desc;
}
where
rownum
<=
10
如果从中间抽取数据
只能用嵌套查询
select
*
from
(
select
*,rownum
rn
from
test
order
by
id
desc;
}
where
rn
>
10
and
rn
<=
21
因为rownum只是一个伪列
select
*
from
test
order
by
id
desc
where
rn
>
2
这将查不出来任何数据
但rownum可以使用小于或等于来取值。。


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式