【纠正】《SQL必知必会》中关于limit的错误描述

《SQL必知必会》里提到的“第0行”是一种错误的说法,还有一句说“offset 5是从哪儿开始”也是一种错误的说法,offset 5表示的是跳过5行而不是从5行开始,offset并不是给第1行数据标识下标为0的记号。新手很容易被误导,以为应该理解为“第0行”或者“offset指定从m行开始”。

之前看这里的时候就觉得理解起来很奇怪很别扭,大家真的不要被误导了。

不要有第0行数据的理解,也不要有offset m是从m行开始的理解

不要有第0行数据的理解,也不要有offset m是从m行开始的理解

不要有第0行数据的理解,也不要有offset m是从m行开始的理解

重要的事情说三遍!!!

正确理解offset

offset 作名词时意为偏移,位移,偏移量,偏离量;

off 离开 + set 开始;建立

offset应该要理解为偏移量,表示跳过的意思,即跳过多少条数据。

offset 0,就是表示跳过0行,不要理解为从第0行开始。

offset 5,就是表示跳过5行,不要理解为从第5行开始。

默认情况偏移量为0,不写offset的时候就是默认偏移量为0,不跳过一行数据。

select * from table_name limit N offset M; 表示跳过M 条数据后,选取N条数据;

select * from table_name limit M,N; 表示跳过M条数据后,选取N条数据;

例如一张表id为:1,2,3,4,5,6

则 select * from table_name limit 3 offset 2: 获得的id为:3,4,5 

前一个数值为获取条数N,后一个数值为跳过个数M;

select * from table_name limit 3,2 :获得的id 为4,5 

前一个数值为跳过个数M,后一个为获取条数N。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值