Oracle FETCH子句详解

目录

一、语法

二、oracle等同写法

三、Mysql等同写法

由于oracle不能使用limit,所以用fetch用来限制查询返回的行数。

一、语法

sql 复制代码
[ OFFSET offset ROWS]
FETCH  NEXT [  row_count | percent PERCENT  ] ROWS  [ ONLY | WITH TIES ]

说明:

  • OFFSET是偏移量,常数,不写默认为0,常用于分页。
  • FETCH NEXT 1 ROWS 等同于 FETCH FIRST 1 ROW。
  • only只返回指定的量,with ties 返回和最后一条数据相同的数据。
  • 所以经常搭配order by使用。
  • 12c以上版本可用。

二、oracle等同写法

例:查年龄最小的三个同学信息。(order by默认升序)

sql 复制代码
SELECT NAME,AGE
FROM USER
ORDER BY AGE
FETCH NEXT 3 ROWS WITH TIES;

等同于

SELECT NAME,AGE
FROM USER
WHERE ROWNUM=3
ORDER BY AGE;

三、Mysql等同写法

sql 复制代码
SELECT NAME,AGE
FROM USER
ORDER BY AGE
LIMIT 0,3;
相关推荐
代码程序猿RIP8 分钟前
【SQLite 库】sqlite3_open_v2
jvm·oracle·sqlite
TDengine (老段)17 分钟前
TDengine 数学函数 ABS() 用户手册
大数据·数据库·sql·物联网·时序数据库·tdengine·涛思数据
lypzcgf18 分钟前
Coze源码分析-资源库-编辑数据库-后端源码-安全与错误处理
数据库·安全·系统架构·coze·coze源码分析·ai应用平台·agent平台
阿湯哥18 分钟前
Redis数据库隔离业务缓存对查询性能的影响分析
数据库·redis·缓存
麦兜*19 分钟前
Redis 7.2 新特性实战:Client-Side Caching(客户端缓存)如何大幅降低延迟?
数据库·spring boot·redis·spring·spring cloud·缓存·tomcat
web安全工具库32 分钟前
Linux 高手进阶:Vim 核心模式与分屏操作详解
linux·运维·服务器·前端·数据库
W.Buffer2 小时前
通用:MySQL-InnoDB事务及ACID特性
数据库·mysql