SQL中limit的用法

说明:limit子句用于限制查询结果返回的数量,常用于分页查询。

用法:【select * from tableName limit i,n 】
参数:tableName: 为数据表;i: 为查询结果的索引值(默认从0开始);n: 为查询结果返回的数量

案例:(来自于力扣的一道简单题)

表: Orders
+-----------------+----------+
| Column Name     | Type     |
+-----------------+----------+
| order_number    | int      |
| customer_number | int      |
+-----------------+----------+

Order_number是该表的主键。
此表包含关于订单ID和客户ID的信息。

编写一个SQL查询,为下了 最多订单 的客户查找 customer_number 。
测试用例生成后, 恰好有一个客户 比任何其他客户下了更多的订单。
查询结果格式如下所示。

示例 1:
输入:

Orders 表:
+--------------+-----------------+
| order_number | customer_number |
+--------------+-----------------+
| 1            | 1               |
| 2            | 2               |
| 3            | 3               |
| 4            | 3               |
+--------------+-----------------+

输出:

+-----------------+
| customer_number |
+-----------------+
| 3               |
+-----------------+

解释:
customer_number 为 ‘3’ 的顾客有两个订单,比顾客 ‘1’ 或者 ‘2’ 都要多,因为他们只有一个订单。
所以结果是该顾客的 customer_number ,也就是 3 。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/customer-placing-the-largest-number-of-orders
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解答:
  首先,我们使用 GROUP BY 选择 customer_number 和相应的订单数目。

SELECTcustomer_number, COUNT(*)
FROMorders
GROUP BY customer_number
customer_number COUNT(*)
1 1
2 1
3 2

  将它们按照订单数目降序排序之后,第一条记录的 customer_number 就是答案。

customer_number COUNT(*)
3 2

  在 MySQL 中, LIMIT 语句可以被用来限制 SELECT 语句的返回行数。它需要传入 1 个或 2 个非负整数参数,第一个参数 offset 表示跳过前面多少行后开始取数据,第二个参数表示最多返回多少行的数据。默认 offset 为 0(不是 1)。
  LIMIT 语句也可以只使用一个参数,这个参数的含义是从结果的第一行开始返回的行数。所以 LIMIT 1 会返回第一行的记录。

SELECTcustomer_number
FROMorders
GROUP BY customer_number
ORDER BY COUNT(*) DESC
LIMIT 1;

【SQL中limit的用法】相关推荐

  1. sql中limit的用法——数据库系列学习笔记

    limit子句用于限制查询结果返回的数量. 用法: select * from tableName limit i,n 参数: tableName : 为数据表: i : 为查询结果的索引值(默认从0 ...

  2. sql中limit的用法

    原创文章,转载请标明出处:https://blog.csdn.net/yihanzhi/article/details/82784770 limit子句用于限制查询结果返回的数量. 用法:[selec ...

  3. SQL中limit用法

    SQL中limit的使用案例 - limit的实际使用案例- 实际SQL代码 一:实际案例解读 描述:有一个员工表employees,字段有员工ID(id).员工姓名(name).员工部门(depar ...

  4. mysql limit 执行顺序_SQL语句执行顺序及MySQL中limit的用法

    一. SQL语句执行顺序及MySQL中limit的用法 执行顺序:from... where...group by... having.... select ... order by... limit ...

  5. sql去重复操作详解SQL中distinct的用法

    在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值.关键词 distinct用于返回唯一不同的值. 表A: 表B: 1.作用于单列 select dist ...

  6. SQL中Truncate的用法

    转自:https://www.cnblogs.com/zhoufangcheng04050227/p/7991759.html 本文导读:删除表中的数据的方法有delete,truncate, 其中T ...

  7. oschina mysql limit_Mysql中limit的用法

    Mysql中limit的用法:在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. SELECT * FROM table ...

  8. mysql limit 含义_深入分析Mysql中limit的用法

    很久没用mysql的limit,一时大意竟然用错了,自认为(limit 开始,结束),其实错了,正确的应该是(limit 偏移量,条数),为了记住这次错误,转载一篇limit用法详解.推荐给大家,希望 ...

  9. sql语句中limit的用法,limit分页查询语句以及总结(一)

    一. 基本用法 在使用查询语句的时候,经常要返回前几条或者中间某几行数据,但是你的数据库查询记录有几万.几十万时,这个时候怎么办呢?mysql 已经为我们提供了上面这样一个功能. 使用LIMIT查询, ...

最新文章

  1. React 2019年路线图发布!Hooks明年一季度上线
  2. Spark源码剖析 - SparkContext的初始化(八)_初始化管理器BlockManager
  3. 将内存单元中小写字符改成大写字符
  4. 定义一个空切片_Python进阶:全面解读高级特性之切片
  5. JS中的正则表达式小小的技巧---TEST方法的使用
  6. django一对多 增 删 改 查
  7. [转载] python字符串处理函数汇总
  8. lua32位和64位字符串和Uint之间的转换
  9. Shiro设定密码匹配规则(自定义密码验证匹配器)
  10. Pspice for TI取消默认打开方式
  11. python爬虫框架论文开题报告范文_研究思路及框架--开题报告
  12. 无法复制到远程计算机,远程桌面无法复制粘贴【解答思路】
  13. 跟着团子学SAP PS—项目结算规则的自动生成 CJB2/CJB1 (ETO模式下正确结算规则设定案例)
  14. 1等于0.循环9吗?
  15. android渠道 积分墙,安卓推广:既然能在应用商店做CPD,为什么还一定要做积分墙?...
  16. 居民供暖室温无线监测系统
  17. 测试开发知识总结(一)
  18. 37岁程序员被裁,120天没找到工作,无奈去小公司,结果蒙了
  19. android 编译
  20. 【bzoj4864】[BeiJing 2017 Wc]神秘物质 Splay

热门文章

  1. 送礼送时尚 当然首选自由自在进口食品
  2. 创成汇丨2019年参加创新创业大赛都能获得什么?
  3. 2023华为影像大赛全球开赛
  4. python模拟点击手机_Python Appium 滑动、点击等操作
  5. 动态规划解题思路总结归纳(一)
  6. 读博碎碎念3:当前读博焦虑的事情
  7. mysql where replace,mysql使用replace函数进行字符串替换
  8. QQ空间 免费代码大全
  9. fetch 之 header
  10. HTML DOM Table对象insertRow()方法与deleteRow()方法