当前位置: 首页 > news >正文

Oracle Fetch子句

FETCH 子句在 Oracle 中可以用来限制查询返回的行数

Oracle FETCH 子句语法

以下说明了行限制子句的语法:

[ OFFSET offset ROWS]FETCH  NEXT [  row_count | percent PERCENT  ] ROWS  [ ONLY | WITH TIES ]

OFFSET 子句

OFFSET 子句指定在行限制开始之前要跳过行数。OFFSET 子句是可选的。 如果跳过它,则偏移量为 0,行限制从第一行开始计算。

偏移量必须是一个数字或一个表达式,其值为一个数字。偏移量遵守以下规则:

如果偏移量是负值,则将其视为 0。
如果偏移量为 NULL 或大于查询返回的行数,则不返回任何行。
如果偏移量包含一个分数,则分数部分被截断。

FETCH 子句

FETCH 子句指定要返回的行数或百分比。

为了语义清晰的目的,您可以使用关键字 ROW 而不是 ROWS,FIRST 而不是 NEXT。 例如,以下子句的行为和产生的结果相同:

FETCH NEXT 1 ROWS
FETCH FIRST 1 ROW

ONLY | WITH TIES 选项

仅返回 FETCH NEXT (或 FIRST) 后的行数或行数的百分比。

WITH TIES 返回与最后一行相同的排序键。请注意,如果使用 WITH TIES,则必须在查询中指定一个 ORDER BY 子句。如果不这样做,查询将不会返回额外的行。

Oracle FETCH 子句实例

  1. 获取前 N 行记录的示例
    以下语句返回库存量最高的前 5 个产品:

– 以下查询语句仅能在Oracle 12c以上版本执行

SELECTproduct_name,quantity
FROMinventories
INNER JOIN productsUSING(product_id)
ORDER BYquantity DESC 
FETCH NEXT 5 ROWS ONLY;

得到结果如下

在这里插入图片描述

2. WITH TIES 示例

以下查询使用 WITH TIES 选项的行限制子句:

-- 以下查询语句仅能在Oracle 12c以上版本执行
SELECTproduct_name,quantity
FROMinventories
INNER JOIN productsUSING(product_id)
ORDER BYquantity DESC 
FETCH NEXT 10 ROWS WITH TIES;

在这里插入图片描述

即使查询请求了 10 行数据,因为它具有 WITH TIES 选项,查询还返回了另外两行。

请注意,这两个附加行在 quantity 列的值与第 10 行 quantity 列的值相同。

3. 以百分比限制返回行的示例

以下查询返回库存量最高的前 1% 的产品:

– 以下查询语句仅能在Oracle 12c以上版本执行

SELECTproduct_name,quantity
FROMinventories
INNER JOIN productsUSING(product_id)
ORDER BYquantity DESC 
FETCH FIRST 1 PERCENT ROWS ONLY;

SQL

执行上面示例查询语句,得到以下结果 :
在这里插入图片描述

库存 (inventories) 表总共有 1112 行,因此,1112 中的 1% 是 11.1,所以提取 12 ()

4. OFFSET 示例

以下查询将跳过库存量最高的前 10 个产品,并返回接下来的 10 个产品:

-- 以下查询语句仅能在Oracle 12c以上版本执行
SELECTproduct_name,quantity
FROMinventories
INNER JOIN productsUSING(product_id)
ORDER BYquantity DESC 
OFFSET 10 ROWS 
FETCH NEXT 10 ROWS ONLY;

得到以下结果 –

在这里插入图片描述

SQL

注意:这个功能可以用于分页的实现

公众号
shenwang_666

相关文章:

Oracle Fetch子句

FETCH 子句在 Oracle 中可以用来限制查询返回的行数 Oracle FETCH 子句语法 以下说明了行限制子句的语法: [ OFFSET offset ROWS]FETCH NEXT [ row_count | percent PERCENT ] ROWS [ ONLY | WITH TIES ]OFFSET 子句 OFFSET 子句指定在行限制开始之前要跳过行…...

Linux应用——线程池

1. 线程池要求 我们创建线程池的目的本质上是用空间换取时间,而我们选择于 C 的类内包装原生线程库的形式来创建,其具体实行逻辑如图 可以看到,整个线程池其实就是一个大型的 CP 模型,接下来我们来完成它 2. 整体模板 #pragma …...

95.【C语言】数据结构之双向链表的头插,头删,查找,中间插入,中间删除和销毁函数

目录 1.双向链表的头插 方法一 方法二 2.双向链表的头删 3.双向链表的销毁 4.双向链表的某个节点的数据查找 5.双向链表的中间插入 5.双向链表的中间删除 6.对比顺序表和链表 承接94.【C语言】数据结构之双向链表的初始化,尾插,打印和尾删文章 1.双向链表的头插 方法…...

leetcode82:删除排序链表中的重复节点||

给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 示例 1: 输入:head [1,2,3,3,4,4,5] 输出:[1,2,5]示例 2: 输入:head [1,1,1,2…...

【C#】使用.net9在C#中向现有对象动态添加属性

在 C# 中向现有对象动态添加属性并不像在 Python 或 JavaScript 中那样容易,因为 C# 是一种强类型语言。 但是,我们可以通过使用一些技术和库来实现这一点,例如扩展方法、字典等。本文将详细介绍如何在 C# 中实现这一点。ExpandoObject 方法 …...

Linux进程信号(信号的产生)

目录 什么是信号? 信号的产生 信号产生方式1:键盘 前台进程 后台进程 查看信号 signal系统调用 案例 理解进程记录信号 软件层面 硬件层面 信号产生方式2:指令 信号产生方式3:系统调用 kill系统调用 案例 其他产生信号的函数调用 1.rais…...

97_api_intro_imagerecognition_pdf2word

通用 PDF OCR 到 Word API 数据接口 文件处理,OCR,PDF 高可用图像识别引擎,基于机器学习,超精准识别率。 1. 产品功能 通用识别接口;支持中英文等多语言字符混合识别;formdata 格式 PDF 文件流传参&#xf…...

【算法】【优选算法】二分查找算法(上)

目录 一、二分查找简介1.1 朴素二分模板1.2 查找区间左端点模版1.3 查找区间右端点模版 二、leetcode 704.⼆分查找2.1 二分查找2.2 暴力枚举 三、Leetcode 34.在排序数组中查找元素的第⼀个和最后⼀个位置3.1 二分查找3.2 暴力枚举 四、35.搜索插⼊位置4.1 二分查找4.2 暴力枚…...

springboot初体验

目录 环境 controller 修改端口号 更改banner图标 运行结果 最核心的:自动装配 环境 jdk17springboot3.3.5maven3.8.2 controller controller层和启动类同级 package com.example.demo.controller; ​ import org.springframework.web.bind.annotation.RequestMapping;…...

使用kalibr_calibration标定相机(realsense)和imu(h7min)

vslam-evaluation/VINS/Installation documentation/4.IMU和相机联合标定kalibr_calibration.md at master DroidAITech/vslam-evaluation GitHub 目录 1.kalibr安装 1.1安装依赖项 1.2创建工作空间 1.3下载kalibr并编译 1.4设置环境变量 2.准备标定板 3.配置驱动和打…...

绿色工厂认定流程

以下是认定绿色工厂的一般流程: 编制年度创建计划 各省辖市、省直管县(市)会结合本地区重点产业发展现状,挑选一批基础条件良好、有创建意愿和条件的企业进行储备培育,并依据当地工业企业发展实际情况按年度制定绿色工…...

《Python游戏编程入门》注-第5章5

《Python游戏编程入门》的“Analog Clock示例程序”部分讲解了模拟时钟的实现方法。该模拟时钟可以通过时针、分针和秒针的旋转,显示当前时间,如图1所示。 图1 模拟时钟 1 绘制圆 从图1中可以看出,时钟的边缘是一个白色的圆,可以通过如图2所示的代码进行绘制。 图2 绘制圆…...

LangChain Ollama实战文献检索助手(二)少样本提示FewShotPromptTemplate示例选择器

本期是用样例来提示大模型生成我们想要的答案。即在输入中给定提示的样例,以及提示模板,然后匹配较相关的样例进行文献综述。 创建示例样本FewShotPromptTemplate 这里我用GTP-o1生成了几个回答,作为样本 samples [{"theme": &…...

K倍区间 C++

1230. K倍区间 - AcWing题库 一开始想到的用前缀和来做&#xff0c;时间复杂度为O(n^2),Time Limit Exceeded #include <iostream> #include <cstring> #include <algorithm> #include <cstdio>using namespace std;const int N 100010;int n,k; in…...

Linux - 弯路系列3:安装和编译libvirt-4.5.0

系统&#xff1a;Anolis8&#xff08;离线&#xff09; 目录 1、步骤2、make过程中的错误错误1&#xff1a;error: xdr_u_int64_t undeclared (first use in this function) 3、make install的错误错误1&#xff1a;/usr/bin/mkdir -p ""/usr/local/etc/libvirt/nwf…...

Jenkins插件使用问题总结

Git Push插件 插件介绍 主要是用于git推送代码到远程仓库中使用&#xff0c;插件地址 pipeline中使用 官方说明中只有一句代码gitPush(gitScm: scm, targetBranch: env.BRANCH_NAME, targetRepo: origin) 流水线语法中也做的不齐全所以一开始我老是设置错&#xff0c;导致代…...

u盘怎么重装电脑系统_u盘重装电脑系统步骤和详细教程【新手宝典】

u盘怎么重装电脑系统&#xff1f;一个u盘怎么重装电脑系统呢&#xff0c;需要将u盘制作成u盘启动盘pe&#xff0c;然后通过U盘启动盘进入pe进行安装系统&#xff0c;下面小编就教大家u盘重装电脑系统步骤和详细教程。 u盘启动是什么意思&#xff1f; U盘启动盘是一种具有特殊功…...

Sql server查询数据库表的数量

SELECT count(*) FROM sys.objects WHERE typeU --统计表数量 SELECT NAME FROM sys.objects WHERE typeU --列出表名称 或者 SELECT COUNT(*) FROM SysObjects Where XTypeU --统计表数量 SELECT Name FROM SysObjects Where XTypeU --列出表名称 --判断字…...

Linux学习笔记之软件包管理RPM与YUM

RPM包的管理 介绍 RPM&#xff08;RedHat Package Manager&#xff09;用于互联网下载包的打包及安装工具&#xff0c;它包含在某些Linux分发版中。他生成具有.RPM扩展名的文件。RPM类似Windows的setup.exe&#xff0c;这一文件格式虽然打上了RedHat的标志&#xff0c;但理念…...

15分钟学 Go 第 41 天:中间件的使用

第41天&#xff1a;中间件的使用 目标&#xff1a;学习如何在Go语言的Web服务中使用中间件 中间件&#xff08;Middleware&#xff09;是Web开发中的一种常见设计模式&#xff0c;通常用于处理请求和响应过程中的一些共通功能。比如&#xff1a;日志记录、认证授权、请求处理…...

终极指南:5分钟让Illustrator批量替换效率提升10倍

终极指南&#xff1a;5分钟让Illustrator批量替换效率提升10倍 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts 还在为Adobe Illustrator中繁琐的批量替换工作而烦恼吗&#xff1f;&…...

Anno 1800模组加载器:3分钟解锁游戏无限可能的终极指南

Anno 1800模组加载器&#xff1a;3分钟解锁游戏无限可能的终极指南 【免费下载链接】anno1800-mod-loader The one and only mod loader for Anno 1800, supports loading of unpacked RDA files, XML merging and Python mods. 项目地址: https://gitcode.com/gh_mirrors/an…...

芯片设计公司ISO 9001认证:从质量管理体系到流片成功的工程实践

1. 从一则旧闻聊起&#xff1a;ISO 9001认证对一家芯片设计公司意味着什么&#xff1f;前几天在整理资料时&#xff0c;偶然翻到一篇2011年的行业旧闻&#xff0c;说的是当时一家名为SiliconBlue Technologies的公司&#xff0c;获得了ISO 9001:2008质量管理体系认证。新闻稿写…...

技术乐观主义与悲观主义:我们正在走向乌托邦还是dystopia?

测试者的双重身份作为一名软件测试从业者&#xff0c;我们天然地同时拥有两副眼镜&#xff1a;一副是信任的眼镜&#xff0c;相信系统能够按照预期运行&#xff0c;相信缺陷终将被发现和修复&#xff1b;另一副是怀疑的眼镜&#xff0c;习惯于在任何看似完美的流程中寻找裂缝&a…...

claw-gatekeeper:构建稳定智能的数据抓取守护服务

1. 项目概述&#xff1a;一个守护数据抓取流程的“看门人”在数据驱动的时代&#xff0c;无论是市场分析、舆情监控还是学术研究&#xff0c;自动化数据抓取&#xff08;爬虫&#xff09;都扮演着至关重要的角色。然而&#xff0c;任何稍有规模的抓取任务&#xff0c;都绕不开几…...

最火 AI 生图模型 Nano Banana Pro 国内免费使用指南

最近在设计圈和 AI 圈&#xff0c;几乎无人不知 Nano Banana Pro。它是谷歌基于 Gemini 3 Pro 打造的最新图像模型&#xff0c;一上线就斩获 LMArena 生图和图像编辑榜单第一名。虽然 Nano Banana 2 的历史成绩更亮眼&#xff0c;但实测体验发现 Pro 版更好用、操作更顺手。 为…...

免费一键去图片水印的App有哪些?免费去图片水印软件推荐,2026实测好用工具盘点

免费一键去图片水印的App有哪些&#xff1f;免费去图片水印软件推荐&#xff0c;2026实测好用工具盘点 在日常用图的过程中&#xff0c;水印几乎是绕不开的麻烦——从网络下载的素材到平台截图&#xff0c;从拍摄叠加的文字标注到品牌Logo&#xff0c;各种形式的水印让图片用起…...

ARM CoreSight TRBPIDR寄存器详解与调试技巧

1. ARM CoreSight TRBPIDR寄存器概述在嵌入式系统调试领域&#xff0c;ARM CoreSight架构提供了一套完整的调试和追踪解决方案。其中TRBPIDR&#xff08;Trace Buffer Peripheral Identification Register&#xff09;系列寄存器是识别和配置追踪缓冲区的关键组件。这些寄存器遵…...

AI产品经理 VS 传统产品经理:不是技术升级,而是物种进化!你准备好了吗?

文章指出&#xff0c;AI时代的产品经理并非仅仅是懂点AI技术的传统产品经理升级版&#xff0c;而是完全不同的“物种”。文章从产品经理的职责、核心能力、与AI的协作模式等方面对比了传统产品经理和AI产品经理的区别&#xff0c;强调AI产品经理需要具备处理意图模糊性、设计失…...

微信聊天记录永久备份完整指南:WeChatExporter开源工具终极教程

微信聊天记录永久备份完整指南&#xff1a;WeChatExporter开源工具终极教程 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 你是否担心珍贵的微信聊天记录会因为手机丢失…...