由于Oracle中没有top关键字,这给分页的确带来了麻烦,好在有rownum这个属性,这个属性是查询的数据的行号,比如
下图中的第一列就是rownum的值,好了废话不多说,看看使用方法
SELECT *
FROM (SELECT ROWNUM ROWNO ,RESULT.*,
FROM TBL_DATA_RESULT RESULT)
WHERE ROWNO BETWEEN n AND m
没错语法就是这么的简单,只许进行嵌套查询就好了,可以看到,在里边一层的查询中除了查询我们要的列之外,加了一个rownum rowno这一列,这个就是重点
,在外层中通过对rowno进行行数的限制,便可以实现分页或者top的功能,当然也可以这么做
SELECT *
FROM (SELECT ROWNUM ROWNO ,RESULT.*,
FROM TBL_DATA_RESULT RESULT)
WHERE ROWNO=1
或者是
SELECT *
FROM (SELECT ROWNUM ROWNO ,RESULT.*,
FROM TBL_DATA_RESULT RESULT)
WHERE ROWNO<10
或者是
SELECT *
FROM (SELECT ROWNUM ROWNO ,RESULT.*,
FROM TBL_DATA_RESULT RESULT)
WHERE ROWNO>1 and ROWNO <10
赶快试试吧