[發明專利]半連接查詢方法、裝置、服務器及存儲介質有效
| 申請號: | 201910079781.0 | 申請日: | 2019-01-28 |
| 公開(公告)號: | CN109753520B | 公開(公告)日: | 2021-01-26 |
| 發明(設計)人: | 張欽;朱仲穎 | 申請(專利權)人: | 上海達夢數據庫有限公司 |
| 主分類號: | G06F16/2455 | 分類號: | G06F16/2455 |
| 代理公司: | 北京品源專利代理有限公司 11332 | 代理人: | 孟金喆 |
| 地址: | 201203 上海*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 連接 查詢 方法 裝置 服務器 存儲 介質 | ||
本發明公開了一種半連接查詢方法、裝置、服務器及存儲介質。該方法包括:解析半連接查詢語句,生成右節點的連接對應的執行計劃樹,半連接查詢語句用于查詢半連接的左節點和右節點,如果左節點與右節點的半連接方式為預設方式且對右節點的查詢形式為預設形式,則根據執行計劃樹中內連接的葉子節點和連接條件,確定獨立葉子節點集合和獨立葉子節點集合對應的連接條件,根據獨立葉子節點集合和獨立葉子節點集合對應的連接條件查詢半連接的左節點和右節點,得到查詢結果。上述技術方案,通過確定獨立葉子節點集合,在右節點的獨立葉子節點集合中查找與左節點的匹配記錄,無需對右節點進行計算,提高了半連接的查詢效率。
技術領域
本發明實施例涉及計算機技術領域,尤其涉及一種半連接查詢方法、裝置、服務器及存儲介質。
背景技術
半連接是數據庫連接的一種,如數據表A與數據表B進行半連接,當數據表A中的一條記錄在數據表B中找到匹配記錄時,返回數據表A的記錄,不返回數據表B的記錄,即使在數據表B中找到多條匹配記錄,也只返回數據表A中該條記錄一次,其中,數據表A稱為半連接的左節點,數據表B稱為半連接的右節點。半連接在結構化查詢語言(Structured QueryLanguage,SQL)中通常使用關鍵字IN或EXISTS作為連接條件,如SQL語句SELECT A.C1,A.C2FROM A WHERE A.C1IN(SELECT B.D1FROM B)就是一個半連接。
半連接的右節點不僅可以是一張表,還可以是一個連接,如SQL語句SELECT A.C1,A.C2FROM A WHERE A.C1IN(SELECT B.D1FROM B,C WEHRE B.D2=C.E1)是一個右節點為連接的半連接,其中,右節點為數據表B與數據表C的連接結果。對于這種情況,現有技術采用的處理方法為:先進行右節點的連接計算,再與左節點進行半連接。
當右節點的連接數量很多,先計算右節點,再在右節點的計算結果中查找與左節點的匹配記錄,計算量非常大,查詢的效率非常低。另外,如果對于右節點中連接的計算本身就非常復雜,那么計算過程也是查詢的瓶頸。
發明內容
本發明實施例提供一種半連接查詢方法、裝置、服務器及存儲介質,提高半連接的查詢效率。
第一方面,本發明實施例提供一種半連接查詢方法,包括:
解析半連接查詢語句,生成右節點的連接對應的執行計劃樹,所述半連接查詢語句用于查詢半連接的左節點和右節點;
如果所述左節點與右節點的半連接方式為預設方式且對所述右節點的查詢形式為預設形式,則根據所述執行計劃樹中內連接的葉子節點和連接條件,確定獨立葉子節點集合和所述獨立葉子節點集合對應的連接條件;
根據所述獨立葉子節點集合和所述獨立葉子節點集合對應的連接條件查詢半連接的左節點和右節點,得到查詢結果。
進一步的,所述根據所述執行計劃樹中內連接的葉子節點和連接條件,確定獨立葉子節點集合和所述獨立葉子節點集合對應的連接條件,包括:
遍歷所述執行計劃樹,獲取所述執行計劃樹中內連接的葉子節點和連接條件;
不同連接條件的葉子節點之間有重合的葉子節點,則將該不同連接條件的全部葉子節點存儲至對應的獨立葉子節點集合中,該不同連接條件為該獨立葉子節點集合對應的連接條件;
單個連接條件與其他連接條件的葉子節點之間無重合的葉子節點,則將該單個連接條件的全部葉子節點存儲至對應的獨立葉子節點集合中,該單個連接條件為該獨立葉子節點集合對應的連接條件。
進一步的,所述獨立葉子節點集合還滿足如下條件:
同一獨立葉子節點集合中的葉子節點彼此關聯,不同獨立葉子節點集合中的葉子節點彼此無關。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海達夢數據庫有限公司,未經上海達夢數據庫有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910079781.0/2.html,轉載請聲明來源鉆瓜專利網。





