1. 程式人生 > >通用ORACLE 分頁查詢語句,儲存過程實現

通用ORACLE 分頁查詢語句,儲存過程實現

PROCEDURE RECORDS_LIST
  (

      sqlrecords in varchar2,
   sqlrecordscount in varchar2,
   cur_result_out out serarch_result,
   totalcount out int,
   curpage in  int,
   perpage in int,
   icurpage out int,
   totalpage out int
  )
  IS
  startno int;
  endno int;
  tempno float;
  BEGIN
     execute immediate sqlrecordscount into totalcount;
  --tempno := (totalcount+perpage-1)*1.00/perpage*1.00;
  --tempno := mod(totalcount,perpage);
  totalpage := ceil(totalcount/perpage);
  icurpage := curpage;
  if curpage > totalpage then
      icurpage := totalpage;
     elsif curpage < 1 then
      icurpage := 1;
  end if;
  startno := (icurpage-1)*perpage+1;
  endno := icurpage*perpage;
   dbms_output.put_line('select * from (select rownum row_num,a.* from (');
   dbms_output.put_line(') a ) where row_num between ');
   dbms_output.put_line(startno);
   dbms_output.put_line(' and ');
   dbms_output.put_line(endno);
  open cur_result_out for 'select * from (select rownum row_num,a.* from ('||sqlrecords||') a ) where row_num between '||startno||' and '||endno;
     --open cur_result_out for sqlpersons;
  EXCEPTION
       WHEN others THEN
          raise;
  END RECORDS_LIST;

相關推薦

通用ORACLE 查詢語句儲存過程實現

PROCEDURE RECORDS_LIST  (       sqlrecords in varchar2,   sqlrecordscount in varchar2,   cur_result_out out serarch_result,   totalcount o

Oracle 查詢語句SQL

通用模板 SELECT * FROM (SELECT TMP_PAGE.*, ROWNUM ROW_ID FROM ( ...//替換這裡 ) TMP_PAGE WHERE ROWNUM <

Oracle查詢語句的寫法

Oracle分頁查詢語句的寫法 Oracle分頁查詢語句使我們最常用的語句之一,下面就為您介紹的Oracle分頁查詢語句的用法,

如何使用plsql匯出oracle資料建表語句儲存過程檢視。以及表中資料

轉載自:http://blog.csdn.net/u010735684/article/details/48524727 侵刪 第一:匯出資料建表語句,儲存過程,檢視等 開啟plsql,如圖,點選工具————匯出使用者物件  點選匯出使用者物件。如圖所示:  如圖勾

ORACLE查詢SQL語句(最有效的)

** 一、效率高的寫法 ** 1.無ORDER BY排序的寫法。(效率最高) (經過測試,此方法成本最低,只巢狀一層,速度最快!即使查詢的資料量再大,也幾乎不受影響,速度依然!) SELECT * FROM (SELECT ROWNUM AS rowno, t.*

MySQL語句執行優化及查詢優化分庫表(一)

下面是關於在使用SQL時,我們儘量應該遵守的規則,這樣可以避免寫出執行效率低的SQL 1、當只需要一條資料時,使用limit 1      在我們執行查詢時,如果添加了 Limit 1,那麼在查詢的時候,在篩選到一條資料時就會停止繼續查詢,但是如果沒有新增limit 1即

Oracle資料庫查詢語句與優化

回顧了之前做的專案,看到查詢分頁功能,發現有可以優化的地方。 總的來說優化過程有三個階段: 一、 select * from (select A.*, rownum rn from (select * from table_name)A) where

MySQL與Oracle查詢語句

一、MySQL MYSQL中有特定的分頁查詢語句,該sql語句只能在MySQL中使用 select * from t_customer limit ?,? 該sql語句的意思是,從第幾行開始,然後取多少行,MySQL中第一行的下標是0 例如:我要取資料庫中的前10行資料,我

oracle 查詢和sql server 查詢 的sql語句

oracle: SELECT * FROM ( SELECT TEMP.* ,ROWNUM RN FROM ( 表) TEMP WHERE ROWNUM <=currentPage * perPageRows ) WHERE RN >  (currentPage

大數據oracle查詢

增加 返回 and 一個 data 連接 相等 查詢條件 重復數 ROWNUM 可能都知道ROWNUM只適用於小於或小於等於,如果進行等於判斷,那麽只能等於1,不能進行大於的比較。 ROWNUM是oracle系統順序分配為從查詢返回的行的編號,返回的第一行分配的是

ORACLE查詢SQL語法——高效的

推薦 col 停止 sql 條件 esc 記錄 table select --1:無ORDER BY排序的寫法。(效率最高)--(經過測試,此方法成本最低,只嵌套一層,速度最快!即使查詢的數據量再大,也幾乎不受影響,速度依然!) SELECT * FROM (SEL

mysql sql查詢語句

mysql select body from 記錄 condition rom col mysq SELECT * FROM ‘table‘ ORDER BY ‘condition‘ DESC LIMIT ‘開始索引‘,‘記錄數‘ mysql sql分頁查詢語句

MySQL、Oracle查詢

del count app spa pos per mail 分頁 request mysql分頁 需用到的參數: pageSize 每頁顯示多少條數據 pageNumber 頁數 從客戶端傳來 totalRecouds 表中的總記錄數 s

oracle 查詢

image oracl ora info from bsp lec mage RR select * from (select rownum as rr,t.* from (select * from emp where sal is not null order by

Oracle 查詢總結 ( rownum )

改寫於:   https://blog.csdn.net/fw0124/article/details/42737671    感謝博主 我只是選取自己需要的,你們想知道全部內容可以去訪問以上鍊接,是篇非常好的博文 RowNum 可能都知

oracle查詢資料重複問題、排序陷阱

select * from (select rownum as rn, ab.* from (SELECT t.id, e.ehr_id, nh_code,

oracle逐步學習總結之oracle查詢(基礎三)

  原創作品,轉載請在文章開頭明顯位置註明出處:https://www.cnblogs.com/sunshine5683/p/10087205.html oracle 的分頁有三種,下面將這三種方式一一列舉,進行分析:   一、根據rowid來分頁   二、根據分

Oracle 查詢總結 ( rownum )

RowNum 可能都知道ROWNUM只適用於小於或小於等於,如果進行等於判斷,那麼只能等於1,不能進行大於的比較。 ROWNUM是oracle系統順序分配為從查詢返回的行的編號,返回的第一行分配的是1,第二行是2,依此類推。 ROWNUM總是從1開始,不管當前的記錄是否

常見資料庫查詢語句

 附:常見資料庫分頁查詢語句 1.oracle資料庫分頁 select * from (select a.*,rownum rc from 表名 where rownum<=endrow) a where a.rc>=startrow 2.DB2資料庫分頁

在SSH框架中多個持久層物件相互引用從而引發查詢查詢所得的持久化物件轉換為JSON字串報錯的原因及解決方案

引言: 使用EasyUI框架的小夥伴們都知道,在使用datagrid(資料表格)時,會傳入如一個URL,用於請求資料表格中的所顯示的資料: <!--建立一個空表格--> <table id="mytable"></table>