mysql和oracle获取第3,4条数据

来源:互联网 发布:linux find 模糊查询 编辑:程序博客网 时间:2024/05/28 05:16

 项目中有个功能需要取4条数据,每2条取一次,页面会传过来一个参数,比如4,就是就取第3条和第4条数据,项目要兼容mysql和oracle,mysql经常用limit,oracle通常用rownum

mysql取第3和4条记录sql实例,limit 代表从几开始取几个,下面sql从2开始,取2条数据,不包含2,从3开始,因此取的结果是3,4条记录:

select t.C_ID,t.C_PATH,t.C_REAL_PATH,t.C_TEXT from tbl_catalog t where t.c_parent_id=83 order by t.c_sortno asc limit 2,2

oracle用rownum就显得复杂一些,如果像mysql那样直接用,很多情况下是查不到数据的,实例:

select *  from (select a.*, rownum row_num          from (select t.C_ID, t.C_PATH, t.C_REAL_PATH, t.C_TEXT                  from tbl_catalog t                 where t.c_parent_id = 83                 order by t.c_sortno asc) a) b where b.row_num > 2   and b.row_num <= 4;


原创粉丝点击