SQL分页
来源:互联网 发布:js字符串方法 编辑:程序博客网 时间:2024/05/04 06:02
create or replace procedure proc_paging
(table_name in varchar2
,select_clause in varchar2
,where_clause in varchar2
,order_clause in varchar2
,start_row in number
,end_row in number
,result in out sys_refcursor
) as
stmt varchar2(2000);
begin
stmt := 'select ' || select_clause || chr(10) ||
'from ' || table_name || chr(10);
if where_clause is not null then
stmt := stmt || 'where ' || where_clause || chr(10);
end if;
if order_clause is not null then
stmt := stmt || 'order by ' || order_clause;
end if;
stmt := 'select ' || select_clause || ',rownum rn' || chr(10) ||
'from (' || stmt || ')';
stmt := 'select rn,' || select_clause || chr(10) ||
'from (' || stmt || ') where rn between ' || start_row || ' and ' || end_row;
dbms_output.put_line(stmt);
open result for stmt;
end;
-- 測試
variable v refcursor;
execute proc_paging('employees', 'employee_id,first_name,salary', null, 'salary desc', 6, 10, :v);
print v;
-- 結果
RN EMPLOYEE_ID FIRST_NAME SALARY
---------- ----------- ------------------------------ ----------
6 147 Alberto 12000
7 100 Steven 12000
8 108 Nancy 12000
9 205 Shelley 12000
10 168 Lisa 11500
- Sql 分页
- SQL 分页
- sql分页
- sql分页
- sql分页
- sql分页
- SQL分页
- SQL分页
- sql分页
- sql 分页
- SQL分页
- SQL分页
- sql 分页
- 分页SQL
- SQL分页
- sql 分页
- sql分页
- 分页SQL
- 编码以及代码页(codepage)
- vc char* CString * BSTR之间的转换
- TCP通信 检测网络已经断了
- 使用 makecab打包
- 642-274认证题库首先Passquick
- SQL分页
- update语法
- linux 经验谈
- BlockSock
- Android 源码部分编辑
- 面向对象技术UML教程摘录——第一章:软件危机及软件工程
- OpenCV访问图像像素, 数组元素等方法收集
- SQL Server 中没有For循环,可以使用while循环代替
- SQL charindex的用法