首页 > 数据库 > MySQL > 正文

oracle分页和mysql分页有哪些差异

2022-07-23 18:48:22
字体:
来源:转载
供稿:网友
  本篇内容介绍了“oracle分页和mysql分页有哪些区别”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
 
  区别:1、oracle使用rownum进行分页操作,rownum只能比较小于不能比较大于,因为该方法都是先查询后排序的;2、mysql使用limit进行分页操作,limit中的参数值不能在语句当中写计算表达式,需要提前计算。
 
  本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。
 
  oracle分页和mysql分页的区别是什么
 
  一、Mysql使用limit分页
 
  select * from stu limit m, n; //m = (startPage-1)*pageSize,n = pageSize
  PS:
 
  (1)第一个参数值m表示起始行,第二个参数表示取多少行(页面大小)
 
  (2)m= (2-1)*10+1,n=10 ,表示 limit 11,10从11行开始,取10行,即第2页数据。
 
  (3)m、n参数值不能在语句当中写计算表达式,写到语句之前必须计算好值。
 
  二、Oracle使用rownum分页
 
  select * from (
  select rownum rn,a.* from table_name a where rownum <= x
  //结束行,x = startPage*pageSize
  )
  where rn >= y; //起始行,y = (startPage-1)*pageSize+1
  PS:
 
  (1)>= y,<= x表示从第y行(起始行)~x行(结束行) 。
 
  (2)rownum只能比较小于,不能比较大于,因为rownum是先查询后排序的,例如你的条件为rownum>1,当查询到第一条数据,rownum为1,则不符合条件。第2、3...类似,一直不符合条件,所以一直没有返回结果。所以查询的时候需要设置别名,然后查询完成之后再通过调用别名进行大于的判断。
 
  “oracle分页和mysql分页有哪些区别”的内容就介绍到这里了,感谢大家的阅读。

(编辑:错新网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表