oracle不支持mysql的limit功能

2021/11/2 2:09:44

本文主要是介绍oracle不支持mysql的limit功能,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、MYSQL使用limit返回指定的行数

select * from table limit m,n;
--从m+1行开始返回,返回n行
select * from table n;
--相当于select * from table 0,n;
select * from table m,-1;
--从m+1行开始返回,返回至最后一行

 

a、从http://www.xuesql.cn/得到测试数据

 

 

b、select * from table limit m,n;

SELECT * FROM movies limit 5,5;

 

c、select * from table n;

SELECT * FROM movies limit 5;

 

 

d、select * from table m,-1;

SELECT * FROM movies limit 5,-1;

 

 2、oracle使用rownum来返回指定的行数

(rownum不是用户自定义的字段,是系统定义的伪列)

a、表accu的测试数据

 

b、rownum是从1开始的

select * from accu where rownum<5;

 

 c、rownum不支持一下的查询

select * from accu where rownum>5;
--这样查询不会出错,但是得不到数据
select * from accu where rownum=m;
--如果m=1,则返回第一行;如果m≠1,返回空

 

 d、查询第2行到第5行数据

select * from (select day_code,buss_month,fnum,rownum as num from accu) where num between 2 and 5 order by day_code;
--rownum是一个伪列,将其变成物理列再选择出来
--这是子查询方式

 

select * from accu where rownum<=5 minus select * from accu where rownum<2
--运用集合减运算,出现在第一个select中而不出现第二个select中

 

详细知识讲解参考https://blog.csdn.net/mitedu/article/details/3584399

 



这篇关于oracle不支持mysql的limit功能的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程