如下所示oracle分页语句怎么改写为mysql分页语句


<![CDATA[
select * from(select rownum as num,U.*,r.roleName from UserInfo u inner join roles r
on u.r_id=r.r_id where rownum<#{countPage,jdbcType=INTEGER}
]]>
and username like #{ke,jdbcType=VARCHAR})
<![CDATA[
where num>#{firtPage,jdbcType=INTEGER}
]]>

按照一个字段排序,最后使用limit begin,size 就可以了,begin表示开始位置,size表示你要取的数量

一般的分页查询使用简单的 limit 子句就可以实现。limit 子句声明如下:
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
LIMIT 子句可以被用于指定 SELECT 语句返回的记录数。需注意以下几点:
第一个参数指定第一个返回记录行的偏移量
第二个参数指定返回记录行的最大数目
如果只给定一个参数:它表示返回最大的记录行数目
第二个参数为 -1 表示检索从某一个偏移量到记录集的结束所有的记录行
初始记录行的偏移量是 0(而不是 1)

例如:

 SELECT
  U.*,
  r.roleName
FROM
  UserInfo u
INNER JOIN roles r
ON
  u.r_id=r.r_id
WHERE
  username LIKE 'user' limit 1,7;