[發明專利]一種節點查詢方法、裝置、電子設備及存儲介質在審
| 申請號: | 202011614261.4 | 申請日: | 2020-12-30 |
| 公開(公告)號: | CN114691674A | 公開(公告)日: | 2022-07-01 |
| 發明(設計)人: | 林斐 | 申請(專利權)人: | 北京國雙科技有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/2455 |
| 代理公司: | 北京華夏泰和知識產權代理有限公司 11662 | 代理人: | 杜欣;吳雪 |
| 地址: | 100083 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 節點 查詢 方法 裝置 電子設備 存儲 介質 | ||
本發明涉及一種節點查詢方法、裝置、電子設備及存儲介質,所述方法包括:獲取待查詢節點的節點標識;在預設查詢表中,查找與待查詢節點對應的第一路徑字符串,根據待查詢節點的路徑字符串和節點標識可以確定查詢范圍,根據查詢范圍可以確定第二路徑字符串,第二路徑字符串對應的節點即為待查詢節點的下級節點。通過本發明,根據待查詢節點的路徑字符串和節點標識確定查詢范圍后,即可查詢到待查詢節點的下級節點的第二路徑字符串,進而確定待查詢節點的下級節點,無需遞歸查找,提高了查詢效率。
技術領域
本發明涉及數據結構領域,尤其涉及一種節點查詢方法、裝置、電子設備及存儲介質。
背景技術
樹狀結構是軟件中一種常見的邏輯結構,在網盤、組織關系等場景中都有應用。樹狀結構在軟件系統中常使用關系型數據庫進行存儲,一般方案是在數據庫中設計一張節點表,該表的每一行記錄一個節點,每一行都有一個唯一id作為該節點的id,并且有一個parentId記錄該節點的父節點的id。
在查詢場景中,經常會有在某個節點分支范圍內進行搜索的需要,也就是在指定子節點的所有下級節點范圍內進行搜索查詢。此時,查詢的流程是從指定一個節點作為搜索起始點,查詢其子節點,然后再根據其子節點遞歸查詢子節點的子節點,如此遞歸查找,直到查找到所有下層節點,也就是,在節點表內用節點id和節點的parentId進行自連接,并遞歸找出所有下級節點。
然而,由于需要遞歸查找,因此查找速度較慢,遞歸的深度和該子樹的深度正相關,子樹越深,節點越多,查找的速度也就越慢,查找效率低。
發明內容
為了解決上述技術問題或者至少部分地解決上述技術問題,本發明提供了一種節點查詢方法、裝置、電子設備以及存儲介質。
第一方面,本發明提供了一種節點查詢方法,所述方法包括:
獲取待查詢節點的節點標識;
在預設查詢表中,查找與所述待查詢節點對應的第一路徑字符串;
根據所述第一路徑字符串和所述待查詢節點的節點標識確定字符串查詢范圍;
將預設查詢表中位于所述字符串查詢范圍內的路徑字符串確定為第二路徑字符串;
確定所述第二路徑字符串對應的節點為所述待查詢節點的下級節點。
可選的,所述根據所述第一路徑字符串和所述待查詢節點的節點標識確定字符串查詢范圍,包括:
基于所述第一路徑字符串、所述待查詢節點的節點標識及預設第一分隔符確定字符串查詢下限;
獲取當前數據庫編碼及字符串排序規則下所述預設第一分隔符的下一個字符,作為第二分隔符;
基于所述第一路徑字符串、所述待查詢節點的節點標識及所述第二分隔符確定字符串查詢上限;
根據所述字符串查詢下限和所述字符串查詢上限確定所述字符串查詢范圍。
可選的,所述將預設查詢表中位于所述字符串查詢范圍內的路徑字符串確定為第二路徑字符串,包括:
在所述查詢表中,查詢大于或等于所述字符串查詢下限的路徑字符串;
在大于或等于所述字符串查詢下限的路徑字符串中,查詢小于所述字符串查詢上限的第二路徑字符串。
可選的,所述方法還包括:
對樹狀結構的所有節點設置節點標識,針對每個節點,所述節點的不同直接下級節點的節點標識不同;
針對每個節點,根據所述節點的所有上級節點的節點標識及第一分隔符生成所述節點對應的路徑字符串,所述第一分隔符用于在路徑字符串中分隔所述樹狀結構中不同層級的節點;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京國雙科技有限公司,未經北京國雙科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011614261.4/2.html,轉載請聲明來源鉆瓜專利網。





