SQL-分页查询offset的用法

在这里插入图片描述

今天在做一道关于查询一张表中第二高工资的问题时发现没有思路,经过一番搜索发现需要用到offset偏移量来解决这个问题。

OFFSET关键字用于指定从结果集的哪一行开始返回数据。通常,它与LIMIT一起使用,以实现分页效果。其语法如下:
SELECT * FROM 表名 LIMIT 行数 OFFSET 偏移量;
或者

SELECT * FROM 表名 LIMIT 行数 , 偏移量;

那么上述问题中要查询第二高的工资正确写法应该如下:

SELECT  salary FROM employee order by salary DESC limit 1,1

后续更新:
在实际使用中发现这两种用法还是有区别的:
举个例子:
我有一张trip表,里面有10条记录,如下:
在这里插入图片描述

我现在使用第一种用法对它进行查询:

SELECT * FROM `trips` LIMIT 2 offset 3;

结果如下:
在这里插入图片描述
这里看id就行,主要看是查询出来的是第几条数据,可以看到查出来的是第4和5条数据。即这条语句实际上是offset 3: 先从第一条数据开始向后偏移3条数据,然后limit 2:输出偏移后的两条数据。

再看第二种用法:

SELECT * FROM `trips` LIMIT 2,3;

结果如下:
在这里插入图片描述

可以看到这里查出来是3条数据,从id=3开始,到5结束。那么这条语句其实是limit2,3中的第一个数字2先控制从第一条数据开始向后偏移两条数据,然后3 是输出3条数据。可以注意到这种方法的两个数字和上面那种用法是刚好相反的,即这里的语句翻译成上面的语句应该是:

SELECT * FROM `trips` LIMIT 3 offset 2;

总结:
两种写法都能做到分页的效果,看个人选择,推荐还是用offset写法,这样不容易记错,看到offset就能想起他是偏移多少条数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/238842.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

行内元素和块级元素分别有哪些?有何区别?怎样转换?

行内元素和块级元素分别有哪些? 常见的块级元素: p、div、form、ul、li、ol、table、h1、h2、h3、h4、h5、h6、dl、dt、dd 常见的行级元素: span、a、img、button、input、select 有何区别? 块级元素: 总是在新行上…

mac 系统 vmware 安装centos8

选择镜像 安装系统 依次设置有告警的项目 设置用户名密码 设置root密码 重启系统 重启成功进入下面界面 勾选,点击done 点击箭头所指按钮 输入密码登录 安装成功了 设置网络 打开终端 切换root用户 输入下面指令 su root 输入root的密码 安装git

【动态规划】LeetCode-63.不同路径II

🎈算法那些事专栏说明:这是一个记录刷题日常的专栏,每个文章标题前都会写明这道题使用的算法。专栏每日计划至少更新1道题目,在这立下Flag🚩 🏠个人主页:Jammingpro 📕专栏链接&…

92基于matlab的引力搜索算法优化支持向量机(GSA-SVM)分类模型

基于matlab的引力搜索算法优化支持向量机(GSA-SVM)分类模型,以分类精度为优化目标优化SVM算法的参数c和g,输出分类可视化结果及适应度变化曲线。数据可更换自己的,程序已调通,可直接运行。 92 引力搜索算法…

PT读spef报PARA-006如何解决?

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 There are multiple causes that can trigger PARA-006 errors. Here is a checklist. 1) SPEF reading order Functionally, the parasitic files can be read in any order. For best stitching…

Jenkins持续集成之修改jenkins工作目录

修改jenkins工作目录 一般不建议把工作目录放到默认的C盘,故可以更改到其他盘中 前置条件:先在其他盘中新建工作目录的文件;如下图 1、首先打开任务管理器,找到服务中的Jenkins进程 2、右击点击转到详细信息; 3、再右…

AIGC创作ChatGPT源码+AI绘画(Midjourney绘画)+支持GPT-4-Turbo模型+DALL-E3文生图

一、AI创作系统 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI…

EasyExcel两行表头

例子: 代码: StorageService localStorageService storageFactory.getLocalStorageService();String path "";// 文件信息String dateTime DateUtils.formatTimestampToString(new Date());String title "xxx统计";String fil…

Hertz 整合swagger

文章目录 Swagger安装使用用法项目demoSwagger注释用法通用API信息 swag命令行参数swagger路由配置 Swagger 安装 go get 安装可执行文件需要配合 GOPATH 模式工作。 go get github.com/swaggo/swag/cmd/swag 因为从 Go 1.17 开始,在 go mod 模式下通过 go get 下…

Openwrt 启用未分配的硬盘空间

参考博客 利用剩余空间扩容根目录 启用未分配空间的过程简述 安装 cfdisk, openwrt -> 系统 -> 软件包 -> 搜索 cfdisk 实体机命令行或者网页端进行操作 cfdisk 命令进入磁盘分区界面,用键盘的上下方向键切换到 Free space (剩余…

CRM:如何通过客户数据分析获得业务洞察?

客户数据分析,也称客户分析,是收集、组织和分析客户数据,以深入了解客户行为的过程。企业将利用这些数据来制定与营销、产品开发、销售等相关的业务决策。 通过客户分析,你可以做出简单的业务决策,比如找出投资回报率…

MySQL字符函数

在数据库中,字符函数是一组用于处理字符串的函数。这些函数可以帮助我们执行各种操作,如连接、比较、替换等。本文将介绍一些常用的MySQL字符函数,并演示如何在查询中使用它们。 1.concat() 函数 CONCAT() 函数用于连接两个或多个字符串。它…