admin

浅析Mysql和Oracle分页的区别

admin 业内资讯 2023-02-27 3715浏览 1279

MySQL使用limit进行分页

select * from stu limit m,n; // m=(pageIndex-1)*pageSize,n=pageSize
-- 返回总条,查询表添加字段sql_calc_found_rows
select sql_calc_found_rows a.* from AAA a limit m,n
-- found_rows单独查询总条数
select found_rows total;
  • 第一个参数m表示起始行,第二个参数表示取多少行;
  • pageIndex表示页索引,即查询第几页的数据(从1开始),pageSize表示页大小,即一页最多显示多少行记录;
  • m= (2-1)*10+1=11,n=10,limit 11,10,表示从第11行开始取记录行(包含第11行),共取10行,也表示查询第2页的数据,这一页最多显示10行记录。

Oracle使用rownum进行分页

select * from(
  select rownum rn,a.*,count(*) over() total from table_name a where rownum <= x 
  -- 结束行,x=pageIndex*pageSize
)
where rn >= y; -- 起始行,y=(pageIndex-1)*pageSize+1
-- 返回总条数
select count(*) over() total from AAA
  • >= y,<= x表示从第y行(起始行)~x行(结束行) 。
  • rownum只能比较小于,不能比较大于,因为rownum是先查询后排序的,例如你的条件为rownum>1,当查询到第一条数据,rownum为1,则不符合条件。第2、3…类似,一直不符合条件,所以一直没有返回结果。所以查询的时候需要设置别名,然后查询完成之后再通过调用别名进行大于的判断。

Mysql与Oracle级联查询

  1. start with: 指定起始节点的条件
  2. connect by: 指定父子行的条件关系
  3. prior: 查询父行的限定符,格式: prior column1 = column2 or column1 = prior column2 and …
  4. nocycle: 若数据表中存在循环行,那么不添加此关键字会报错,添加关键字后,便不会报错,但循环的两行只会显示其中的第一条
  5. 循环行: 该行只有一个子行,而且子行又是该行的祖先行
  6. connect_by_iscycle: 前置条件:在使用了nocycle之后才能使用此关键字,用于表示是否是循环行,0表示否,1 表示是
  7. connect_by_isleaf: 是否是叶子节点,0表示否,1 表示是
  8. level: level伪列,表示层级,值越小层级越高,level=1为层级最高节点
-- connect by: 指定父子行的条件关系
-- start with: 指定起始节点的条件
select c.bc_id,c.bc_name from org_busicorp c 
connect by prior c.bc_pid = c.bc_id
start with c.bc_id = '001';

Mysql省市区级联查询

-- 二三级查询
select c1.bc_id,c1.bc_name from org_busicorp c1 where c1.bc_pid = '00'
union
select c2.bc_id,c2.bc_name from org_busicorp c2 
left join org_busicorp c1 on c1.bc_id = c2.bc_pid
where c1.bc_pid = '00'
-- 包含当前id
union
select c3.bc_id,c3.bc_name from org_busicorp c3 where c3.bc_id = '00'

Mysql递归函数

SELECT
	ID.LEVEL,
	DATA.* 
FROM
	(
	SELECT
		@ids AS _ids,
		( SELECT @ids := GROUP_CONCAT( id ) FROM 表名 WHERE FIND_IN_SET( 父级 id字段, @ids ) ) AS cids,
		@l := @l + 1 AS LEVEL 
	FROM
		表名,
		( SELECT @ids := '条件id', @l := 0 ) b 
	WHERE
		@ids IS NOT NULL 
	) ID,
	表名 DATA 
WHERE
	FIND_IN_SET( DATA.id, ID._ids ) 
ORDER BY
	LEVEL,
	id

浅析Mysql和Oracle分页的区别

Mysql与Oracle插入数据存在修改不存在新增

Mysql插入数据存在修改、不存在新增

insert into `subject`(subjectId,subjectName) 
values('7','离散') 
on duplicate key update subjectName='离散数学';

Oracle插入数据存在修改、不存在新增

merge into 目标表 a
using 源表 b
on(a.条件字段1=b.条件字段1 and a.条件字段2=b.条件字段2 ……)  
when matched then update set a.字段=b.字段 --目标表别称a和源表别称b都不要省略
when  not matched then insert (a.字段1,a.字段2……)values(b.字段1,b.字段2……) --目标表别称a可省略,源表别称b不可省略

源表b可能是一张表结构不同于a的表,有可能是一张构建相同表结构的临时表,也有可能是我们自己组起来的数据

merge into student a
using (select '7' as id from dual) s
on (a.id = s.id)
when matched then
  update set a.student_name = '小明二号'
when not matched then
  insert (id, student_name, fk_class) values ('7', '小明', '2')

继续浏览有关 数据库技术文章/教程 的文章
1279条评论
  • 游客 发表于 2周前 回复

    大神就是大神,这么经典!http://www.ddman.net

  • 游客 发表于 1周前 回复

    怎么我回帖都没人理我呢?http://45hl.sx56.com.cn

  • 游客 发表于 1周前 回复

    感觉不错!http://a7we.1360371.com

  • 游客 发表于 1周前 回复

    东方不败还是灭绝师太啊?http://7il.0519srdz.com

  • 游客 发表于 1周前 回复

    这一年啥事没干,光研究楼主的帖子了!http://c6k2qy.xcygf.cn

  • 游客 发表于 1周前 回复

    勤奋灌水,天天向上!http://9hilo.jvbfjfjvkx.com/O/4.html

  • 游客 发表于 1周前 回复

    楼主是好人!http://cn9.sx56.com.cn

  • 游客 发表于 1周前 回复

    我对楼主的敬仰犹如滔滔江水绵延不绝!http://5xw.zsjpf.com

  • 游客 发表于 1周前 回复

    楼上的这是啥态度呢?http://64qi.zbqinjiang.com

  • 游客 发表于 1周前 回复

    很有看点!http://dx37ww.hongkongboson.com

  • 游客 发表于 1周前 回复

    楼主加油,看好你哦!http://ljcab.mojushijie.com

  • 游客 发表于 1周前 回复

    看了这么多帖子,第一次看到这么经典的!http://hc56k.dtzxyry.com

  • 游客 发表于 1周前 回复

    信楼主,考试不挂科!http://6xtyf.mc88d.com/13/5.html

  • 游客 发表于 1周前 回复

    好无聊啊!http://www.gymcj.cn

  • 游客 发表于 1周前 回复

    很多天不上线,一上线就看到这么给力的帖子!http://0k2.pushyads.com

  • 游客 发表于 1周前 回复

    很多天不上线,一上线就看到这么给力的帖子!http://www.gymcj.cn

  • 游客 发表于 1周前 回复

    刚分手,心情不好!http://15ov88.tianwangbiao.net

  • 游客 发表于 1周前 回复

    最近回了很多帖子,都没人理我!http://l5ikn.njmybj8.com/k/4.html

  • 游客 发表于 1周前 回复

    论坛的帖子越来越有深度了!http://957sd4.dgxycake.com

  • 游客 发表于 1周前 回复

    文章写太挺好了,真的值得推荐http://svmfpg.zststn.cn

  • 访客 发表于 1周前 回复

    安福货源网https://ccc444.com

  • 游客 发表于 1周前 回复

    看帖不回帖的人就是耍流氓,我回复了!http://6zry.data1688.cn

  • 游客 发表于 1周前 回复

    楼主就是我的榜样哦http://1vjr8.syfhyc.com/Z/4.html

  • 游客 发表于 1周前 回复

    不错的帖子,值得收藏!http://d9hr4r.zststn.cn

  • 游客 发表于 1周前 回复

    支持一个http://h3cqp0.toilet-trainers.com

  • 游客 发表于 1周前 回复

    看了这么多帖子,第一次看到这么高质量内容!http://avi5w.sx56.com.cn

  • 游客 发表于 1周前 回复

    楼主就是我的榜样哦http://fhm.yunzongcn.com

  • 游客 发表于 1周前 回复

    白富美?高富帅?http://ukp.dgxycake.com

  • 游客 发表于 1周前 回复

    论坛的帖子越来越有深度了!http://oty.xbtea.cn

  • 游客 发表于 1周前 回复

    收藏了,楼主加油!http://jila0.qhs61yey.com

  • 游客 发表于 1周前 回复

    最近回了很多帖子,都没人理我!http://rbia.jxbdcdj.org

  • 游客 发表于 1周前 回复

    论坛的人气不行了!http://z0rab.zbqinjiang.com

  • 游客 发表于 1周前 回复

    鸟大了,什么林子都敢进啊!http://7fu7q0.ckppe.cn

  • 游客 发表于 1周前 回复

    这篇文章真是让人受益匪浅!http://vq5.xtxcrl.com

  • 游客 发表于 1周前 回复

    小弟默默的路过贵宝地~~~http://5i9.w2artstudio.com

  • 游客 发表于 1周前 回复

    以后要跟楼主好好学习学习!http://hrov4.hp315.com

  • 游客 发表于 1周前 回复

    无图无真相!http://id9c.skyee361.com

  • 游客 发表于 1周前 回复

    不错的帖子,值得收藏!http://mariannearkins.com/news/73b099476.html

  • 游客 发表于 1周前 回复

    好无聊啊!http://1bpem.zhijian.me

  • 游客 发表于 1周前 回复

    不错的帖子,值得收藏!http://pggb2.kjpx51.com/01/3.html

  • 游客 发表于 1周前 回复

    态度决定一切,不错!http://86hw2.szplejg.com/07/3.html

  • 游客 发表于 1周前 回复

    宇宙第一贴诞生了!http://krz.sh-jinsl.com

  • 游客 发表于 1周前 回复

    回帖也有有水平的!http://gk122.dq856.com/07/4.html

  • 游客 发表于 1周前 回复

    雷锋做好事不留名,都写在帖子里!http://qhb.qdyonglile.com

  • 游客 发表于 1周前 回复

    怎么我回帖都没人理我呢?http://www.hntbhz.cn/post/20.html

  • 游客 发表于 1周前 回复

    吹牛的人越来越多了!http://gnqk.cn/news/03d399636.html

  • 游客 发表于 1周前 回复

    终于看完了,很不错!http://7u8.69ey2.cn

  • 游客 发表于 1周前 回复

    每次看到楼主的帖子都有惊吓!http://2yaswv.yunzongcn.com

  • 游客 发表于 1周前 回复

    看了这么多帖子,第一次看到这么有深度了!http://comical-family-tree.com/news/86d099463.html

  • 游客 发表于 1周前 回复

    坚持回帖!http://huichengyu.com/news/52a399587.html

  • 游客 发表于 1周前 回复

    这一年啥事没干,光研究楼主的帖子了!http://n3u94.quanqiuidc.com

  • 游客 发表于 1周前 回复

    楼主是在找骂么?http://lv09s.89055e.com/01/4.html

  • 游客 发表于 1周前 回复

    写的太好啦,评论一个http://yq3t0.wxchangjie.com

  • 游客 发表于 1周前 回复

    语言表达流畅,没有冗余,读起来很舒服。http://hao123cn.cn/news/68a099481.html

  • 游客 发表于 1周前 回复

    坚持回帖!http://www.kdhlpt.com/yaowen/237276189.html

  • 游客 发表于 1周前 回复

    有钱、有房、有车,人人都想!http://www.kdhlpt.com/yaowen/806454975.html

  • 游客 发表于 1周前 回复

    精华帖的节奏啊!http://www.kdhlpt.com/yaowen/453775499.html

  • 游客 发表于 1周前 回复

    顶一下,收藏了!http://www.kdhlpt.com/yaowen/126354807.html

  • 游客 发表于 1周前 回复

    我和我的小伙伴都惊呆了!http://4v6.dxwlwtop.com

  • 游客 发表于 1周前 回复

    顶顶更健康!http://ioid.hangboss.net/test/488605904.html

  • 游客 发表于 1周前 回复

    雷锋做好事不留名,都写在帖子里!http://ysvx.hangboss.net/test/165433933.html

  • 游客 发表于 1周前 回复

    楼主你想太多了!http://eoor.lvdouya.net/test/934103311.html

  • 游客 发表于 1周前 回复

    灌水不是我的目的!http://xmht.hangboss.net/test/041395494.html

  • 游客 发表于 1周前 回复

    青春不在了,青春痘还在!http://bkht.hangboss.net/test/179650797.html

  • 游客 发表于 1周前 回复

    楼主写的很经典!http://bocg.hangboss.net/test/080110942.html

  • 游客 发表于 1周前 回复

    楼主是在找骂么?http://3r4.baidulanmo.com

  • 游客 发表于 1周前 回复

    强,我和我的小伙伴们都惊呆了!http://ynjv.lvdouya.net/test/106342014.html

  • 游客 发表于 1周前 回复

    楼主的头像是本人吗?http://frev.hangboss.net/test/586251317.html

  • 游客 发表于 1周前 回复

    今天上网不回帖,回帖就回精华帖!http://aypq.hangboss.net/test/264909202.html

  • 游客 发表于 1周前 回复

    强,我和我的小伙伴们都惊呆了!http://yivc.hangboss.net/test/652562544.html

  • 游客 发表于 1周前 回复

    楼主就是我的榜样哦http://cxoc.hangboss.net/test/906171355.html

  • 游客 发表于 1周前 回复

    语言表达流畅,没有冗余,读起来很舒服。http://barb.hangboss.net/test/969919025.html

  • 游客 发表于 1周前 回复

    灌水不是我的目的!http://bv344.lhjclvsjn.com/07/5.html

  • 游客 发表于 1周前 回复

    网页的加载速度非常快,不会影响用户体验。http://pnfl.lvdouya.net/test/837088988.html

  • 游客 发表于 1周前 回复

    在哪里跌倒,就在那里多爬一会儿!http://wzfb.lvdouya.net/test/206895646.html

  • 游客 发表于 1周前 回复

    有钱、有房、有车,人人都想!http://slpf.hangboss.net/test/253324305.html

  • 游客 发表于 1周前 回复

    青春不在了,青春痘还在!http://qxxd.hangboss.net/test/097591530.html

  • 游客 发表于 1周前 回复

    收藏了,以后可能会用到!http://ecjm.hangboss.net/test/715898300.html

  • 游客 发表于 1周前 回复

    楼主的文笔不错!http://npod.hangboss.net/test/791419619.html

  • 游客 发表于 1周前 回复

    写的太好啦,评论一个http://vkro.lvdouya.net/test/274144165.html

  • 游客 发表于 1周前 回复

    吹牛的人越来越多了!http://sbjx.hangboss.net/test/349812630.html

  • 游客 发表于 1周前 回复

    东方不败外加灭绝师太啊!http://jbfg.hangboss.net/test/745747123.html

  • 游客 发表于 1周前 回复

    楼主看起来很有学问!http://mhpo.lvdouya.net/test/587094280.html

  • 游客 发表于 1周前 回复

    你觉得该怎么做呢?http://vzzw.lvdouya.net/test/402798545.html

  • 游客 发表于 1周前 回复

    赞一个!http://akvzw.aijiankang99.com

  • 游客 发表于 1周前 回复

    看了这么多帖子,第一次看到这么有深度了!http://aqry.hangboss.net/test/119973897.html

  • 游客 发表于 1周前 回复

    有品位!http://cmwv.hangboss.net/test/044402450.html

  • 游客 发表于 1周前 回复

    这个帖子会火的,鉴定完毕!http://zxqf.lvdouya.net/test/723615129.html

  • 游客 发表于 1周前 回复

    楼主人气很旺!http://psfs.lvdouya.net/test/687800586.html

  • 游客 发表于 1周前 回复

    青春不在了,青春痘还在!http://mjke.lvdouya.net/test/220758873.html

  • 游客 发表于 1周前 回复

    楼上的真不讲道理!http://ixdn.hangboss.net/test/004651775.html

  • 游客 发表于 1周前 回复

    不错哦,楼主这是要火的节奏啊!http://d7y.yunzongcn.com

  • 游客 发表于 1周前 回复

    十分赞同楼主!http://znhe.lvdouya.net/test/845864580.html

  • 游客 发表于 1周前 回复

    今天上网不回帖,回帖就回精华帖!http://tsix.hangboss.net/test/163479205.html

  • 游客 发表于 1周前 回复

    不错哦,楼主这是要火的节奏啊!http://ocvc.hangboss.net/test/557622687.html

  • 游客 发表于 1周前 回复

    经典!http://bman.hangboss.net/test/280606208.html

  • 游客 发表于 1周前 回复

    缺乏激情了!http://eczh.hangboss.net/test/840245153.html