<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

一種數據庫應用系統的分頁查詢方法和裝置的制造方法

文檔序號:9887638閱讀:322來源:國知局
一種數據庫應用系統的分頁查詢方法和裝置的制造方法
【技術領域】
[0001] 本申請涉及數據處理技術領域,特別是涉及一種數據庫應用系統的分頁查詢方法 和一種數據庫應用系統的分頁查詢裝置。
【背景技術】
[0002] 隨著時間和業務的發展,數據庫應用系統中數據表會越來越多,數據表中的數據 也會越來越多,為了解決數據庫應用系統容量有限問題,通常將數據庫應用系統中的數據 采用分庫分表的方式來進行存儲。在數據庫應用系統中查詢數據時,經常采用分頁查詢的 方式來進行查詢,但是在分庫分表的情形下,當進行分頁查詢時,需要查詢出數據庫應用系 統每個數據分表中,符合分頁查詢條件的全部數據,然后對全部數據進行合并和排序,最后 提取出指定的分頁碼所對應的數據,由于在數據分表中滿足分頁查詢條件數據量往往非常 大,因此需要較長的查詢時間作為代價。
[0003] 參照圖1所示的一種數據庫應用系統對于分庫分表中的數據進行分頁查詢的示 意圖,分頁查詢具體可以分為以下幾個步驟:
[0004] 1、接收分頁查詢請求;所述分頁查詢請求包括分頁查詢條件。
[0005] 2、從每個數據分表中查詢滿足分頁查詢條件的全部數據。假定數據分表個數為M, 每個數據分表中滿足分頁查詢條件的數據為N,那么數據應用系統則需要獲取的數據集合 為 M*N。
[0006] 3、假定指定的分頁碼為K,分頁查詢條數為S,則截取排序好的M*N數據集合中下 標(K-1)*S到K*S-1的數據,并將其返回數據庫應用系統的客戶端。假定在數據庫應用系 統中包括數據分表1和數據分表2,在數據分表1滿足分頁查詢條件的數據集合為[1,2, 3, 4],在數據分表2滿足分頁查詢條件的數據集合為[2, 3,4, 5],在數據分表3滿足分頁查詢 條件的數據集合為[3,4, 5,6],全部合并后獲得的數據集合M*N為[1,2, 3,4, 2, 3,4, 5, 3,4, 5,6]。若當前用戶想要查看指定的分頁碼key = 2,分頁查詢條數S = 2,則需要返回數據 集合M*N中數據則為下標從2~3的數據,則為[3,4]。
[0007] 從上述分頁查詢步驟可以看出,每次分頁查詢都需要從數據分表中查詢出滿足分 頁查詢條件的全部M*N條數據,然后截取出指定的分頁碼K所對應的數據,數據分表中的總 數據量通常是海量的,需要花費大量的時間查詢,因此查詢效率非常低。
[0008] 因此,目前需要本領域技術人員迫切解決的一個技術問題就是:提出一種數據庫 應用系統的分頁查詢機制,用以節省在分頁查詢時所需的查詢時間。
[0009] 申請內容
[0010] 本申請實施例所要解決的技術問題是提供一種數據庫應用系統的分頁查詢方法, 用以節省在分頁查詢時所需的查詢時間。
[0011] 相應的,本申請實施例還提供了一種數據庫應用系統的分頁查詢裝置,用以保證 上述方法的實現及應用。
[0012] 為了解決上述問題,本申請公開了一種數據庫應用系統的分頁查詢方法,所述數 據庫應用系統中包括一個或多個數據分表;所述的方法包括:
[0013] 接收分頁查詢請求;所述分頁查詢請求中包括分頁查詢條件,分頁標識和分頁查 詢條數S ;
[0014] 從所述一個或多個數據分表中,分別提取出滿足所述分頁查詢條件的第一相關數 據;
[0015] 分別判斷所述一個或多個數據分表是否存在對應的分頁查詢輔助數據;
[0016] 若所述一個或多個數據分表存在對應的分頁查詢輔助數據,則采用所述分頁查詢 輔助數據,分頁查詢條數S和分頁標識從所述第一相關數據中,篩選出作為分頁查詢結果 的第二相關數據。
[0017] 優選地,在所述分別判斷所述一個或多個數據分表是否存在對應的分頁查詢輔助 數據的步驟之后,還包括:
[0018] 若所述一個或多個數據分表不存在對應的分頁查詢輔助數據,則采用所述分頁查 詢條數S和分頁標識從所述第一相關數據中,篩選出作為分頁查詢結果的第二相關數據。
[0019] 優選地,在所述從一個或多個數據分表中,分別提取出滿足所述分頁查詢條件的 第一相關數據的步驟之后,還包括:
[0020] 將所述第一相關數據按照指定字段進行排序;
[0021] 為所述排序后的所述第一相關數據按序添加數據記錄排序標識。
[0022] 優選地,所述分頁查詢輔助數據包括數據分表標識,以及,相應數據分表中的數據 目標索引;所述采用分頁查詢輔助數據,分頁查詢條數S和分頁標識從所述第一相關數據 篩選出作為分頁查詢結果的第二相關數據的步驟包括:
[0023] 在所述數據分表標識對應的數據分表中,查找到與所述數據目標索引一致的數據 記錄排序標識;
[0024] 在所述第一相關數據中從所述數據記錄排序標識之后,按序讀取滿足所述分頁查 詢條數S的前S條第一相關數據,所述S為正整數;
[0025] 從所述滿足所述分頁查詢條數S的前S條第一相關數據中,采用所述分頁查詢條 數S提取出作為分頁查詢結果的第二相關數據。
[0026] 優選地,所述采用分頁查詢條數S和分頁標識從所述第一相關數據中,篩選出作 為分頁查詢結果的第二相關數據的步驟包括:
[0027] 采用所述分頁標識與分頁查詢條數S計算數據讀取索引;
[0028] 查找到與所述數據讀取索引一致的數據記錄排序標識;
[0029] 在所述第一相關數據中從所述數據記錄排序標識之后,按序讀取滿足所述分頁查 詢條數S的前S條第一相關數據;
[0030] 從所述滿足所述分頁查詢條數S的前S條第一相關數據中,采用所述分頁查詢條 數S提取出作為分頁查詢結果的第二相關數據。
[0031 ] 優選地,所述從滿足所述分頁查詢條數S的前S條第一相關數據中,采用所述分頁 查詢條數S提取出作為分頁查詢結果的第二相關數據的步驟包括:
[0032] 將所述滿足所述分頁查詢條數S的前S條第一相關數據合并為數據集合;
[0033] 將所述數據集合按照指定字段進行排序;
[0034] 從所述排序后的數據集合中提取出前分頁查詢條數S的數據作為分頁查詢結果 的第二相關數據。
[0035] 優選地,在所述采用分頁查詢輔助數據,分頁查詢條數S和分頁標識從所述第一 相關數據中,篩選出作為分頁查詢結果的第二相關數據的步驟之后,還包括:
[0036] 獲取所述第二相關數據在一個或多個數據分表中最后的數據記錄排序標識;
[0037] 采用所述最后的數據記錄排序標識,以及所述一個或多個數據分表對應的數據分 表標識生成分頁查詢輔助數據。
[0038] 優選地,所述的方法還包括:
[0039] 采用所述分頁查詢輔助數據生成分頁查詢請求,并返回所述接收分頁查詢請求的 步驟。
[0040] 本申請實施例還公開了一種數據庫應用系統的分頁查詢裝置,所述數據庫應用系 統中包括一個或多個數據分表;所述的裝置包括:
[0041] 接收模塊,用于接收分頁查詢請求;所述分頁查詢請求中包括分頁查詢條件,分頁 查詢條數S和分頁標識;
[0042] 第一提取模塊,用于從所述一個或多個數據分表中,分別提取出滿足所述分頁查 詢條件的第一相關數據;
[0043] 判斷模塊,用于分別判斷所述一個或多個數據分表是否存在對應的分頁查詢輔助 數據;
[0044] 第二提取模塊,用于在所述一個或多個數據分表存在對應的分頁查詢輔助數據 時,采用所述分頁查詢輔助數據,分頁查詢條數S和分頁標識從所述第一相關數據中,篩選 出作為分頁查詢結果的第二相關數據。
[0045] 優選地,所述的裝置還包括:
[0046] 第三提取模塊,用于在所述一個或多個數據分表不存在對應的分頁查詢輔助數據 時,采用所述分頁查詢條數S和分頁標識從所述第一相關數據中,篩選出作為分頁查詢結 果的第二相關數據。
[0047] 優選地,所述的裝置還包括:
[0048] 排序模塊,用于將所述第一相關數據按照指定字段進行排序;
[0049] 添加模塊,用于為所述排序后的所述第一相關數據按序添加數據記錄排序標識。
[0050] 優選地,所述分頁查詢輔助數據包括數據分表標識,以及,相應數據分表中的數據 目標索引;所述第二提取模塊包括:
[0051] 第一標識查找子模塊,用于在所述數據分表存在對應的分頁查詢輔助數據時,在 所述數據分表標識對應的數據分表中,查找到與
當前第1頁1 2 3 4 5 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影