新四季網

一種Mysql資料庫下樹形數據結構的檢索方法

2023-09-22 02:31:55

一種Mysql資料庫下樹形數據結構的檢索方法
【專利摘要】一種Mysql資料庫下樹形數據結構的檢索方法,包括:在標準的樹形數據結構表的基礎上增加一個path欄位,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接;得到一新的樹形數據結構表;當執行數據查詢時,根據所要查詢的節點的path欄位來匹配節點,查到該節點下所有節點。還可以再增加一個layer欄位,該layer欄位記錄每個節點的層級;步驟3:當執行數據查詢時,根據所要查詢的節點的layer欄位來匹配節點,查到某一層級的所有節點,或者某一層級的節點個數。本發明所要解決的技術問題在於提供一種簡單有效的Mysql資料庫下樹形數據結構的檢索方法,增強sql語句的可讀性、維護性、可移植能力。
【專利說明】一種M ysql資料庫下樹形數據結構的檢索方法
【技術領域】
[0001]本發明涉及M ysql資料庫,屬於資料庫檢索領域,具體是指一種M ysql資料庫下樹形數據結構的檢索方法。
【背景技術】
[0002]圖1是M ysql資料庫樹形結構展現形式示意圖。其樹形結構標準結構圖如圖2所示,圖中表的欄位為id,name, fid,其中fid為父結點id。對於此種表的檢索方法有兩種:第I種方法是:先通過Parent_ID查詢出所有子節點,然後依次查詢子節點下所有下級節點。依次循環。第2種方法是:通過定義存儲過程。利用遊標的下移查找所有節點。
[0003]以上兩種做法均有缺陷,第I種方法不能夠一次性取出目標數據,需要多次訪問資料庫,效率極低;第2種方法可讀性差、難以維護、可移植能力差。
有鑑於此,本發明人針對現有技術的缺陷深入研究,並有本案產生。

【發明內容】

[0004]本發明所要解決的技術問題在於提供一種簡單有效的M ysql資料庫下樹形數據結構的檢索方法,增強sql語句的可讀性、維護性、可移植能力。
[0005]本發明採用以下技術方案解決上述技術問題:
技術方案之一:
一種M ysql資料庫下樹形數據結構的檢索方法,包括如下步驟:
步驟1:在標準的樹形數據結構表的基礎上增加一個path欄位,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接;得到一新的樹形數據結構表;
步驟2:當執行數據查詢時,根據所要查詢的節點的path欄位來匹配節點,查到該節點下所有節點。
[0006]技術方案之二:
一種M ysql資料庫下樹形數據結構的檢索方法,包括如下步驟:
步驟1:在標準的樹形數據結構表的基礎上增加一個path欄位,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接;得到一新的樹形數據結構表;
步驟2:在所述新的樹形數據結構表的基礎上再增加一個layer欄位,該layer欄位記錄每個節點的層級;
步驟3:當執行數據查詢時,根據所要查詢的節點的layer欄位來匹配節點,查到某一層級的所有節點,或者某一層級的節點個數。
[0007]本發明的優點在於:資料庫中定義了一張數據表,表中存儲樹形數據(如:組織結構、站點地圖)。查詢某一個節點下所有子節點時,通過創建一個特殊的路徑欄位,提高檢索效率。而查詢某一個節點下某一層級的所有子節點時,通過創建一個層級欄位來實現。本發明簡單有效,增強sql語句的可讀性、維護性、可移植能力。
【專利附圖】

【附圖說明】
[0008]下面參照附圖結合實施例對本發明作進一步的描述。
[0009]圖1是M ysql資料庫樹形結構展現形式示意圖。
[0010]圖2是M ysql資料庫樹形結構標準結構圖。
[0011]圖3是本發明第一實施例的樹形結構示意圖。
[0012]圖4是本發明第一實施例的查詢結果示意圖。
[0013]圖5是本發明第二實施例的樹形結構示意圖。
[0014]圖6是本發明第二實施例的查詢結果示意圖。
[0015]圖7是本發明第二實施例的查詢個數結果示意圖。
【具體實施方式】
[0016]第一實施例:
一種M ysql資料庫下樹形數據結構的檢索方法,包括如下步驟:
步驟1:在標準的樹形數據結構表的基礎上增加一個path欄位,如圖3所示,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接,圖3所示為用冒號拼接;得到一新的樹形數據`結構表;
步驟2:當執行數據查詢時,如果想要查詢「黑龍江」下所有節點,只要根據「黑龍江」這個節點的path欄位來匹配節點,查到該節點下所有節點。
[0017]S ql實例:查詢「黑龍江」下所有節點
Select * from location where path like 『1:5%』 ;
得到的結果如圖4所示。
[0018]第二實施例:
一種M ysql資料庫下樹形數據結構的檢索方法,包括如下步驟:
步驟1:在標準的樹形數據結構表的基礎上增加一個path欄位,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接;得到一新的樹形數據結構表;
步驟2:在所述新的樹形數據結構表的基礎上再增加一個layer欄位,如圖5所示,該layer欄位記錄每個節點的層級;
步驟3:當執行數據查詢時,根據所要查詢的節點的layer欄位來匹配節點,查到某一層級的所有節點,或者某一層級的節點個數。
[0019]S ql實例:查詢「行政機構」下所有第三級的節點
Select * from location where path like H and layer=3 ;
得到的結果如圖6所示。
[0020]S ql實例:查詢「行政機構」下所有第三級的節點個數
Select count (id) from location where path like ^ 1:%> and layer=3 ;
得到的結果如圖7所示。
[0021]本發明提供一種簡單有效的M ysql資料庫下樹形數據結構的檢索方法,增強sql語句的可讀性、維護性、可移植能力,提高了檢索效率。
[0022]以上所述僅為本發明的較佳實施用例而已,並非用於限定本發明的保護範圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換以及改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種M ysql資料庫下樹形數據結構的檢索方法,其特徵在於:包括如下步驟: 步驟1:在標準的樹形數據結構表的基礎上增加一個path欄位,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接;得到一新的樹形數據結構表; 步驟2:當執行數據查詢時,根據所要查詢的節點的path欄位來匹配節點,查到該節點下所有節點。
2.—種M ysql資料庫下樹形數據結構的檢索方法,其特徵在於:包括如下步驟: 步驟1:在標準的樹形數據結構表的基礎上增加一個path欄位,該path欄位記錄每個節點的路徑,該path欄位內容為:本節點及上級所有節點通過字符拼接;得到一新的樹形數據結構表; 步驟2:在所述新的樹形數據結構表的基礎上再增加一個layer欄位,該layer欄位記錄每個節點的層級; 步驟3:當執行數據查詢時,根據所要查詢的節點的layer欄位來匹配節點,查到某一層級的所有節點,或者某一層級的節點個數。
【文檔編號】G06F17/30GK103853773SQ201210511993
【公開日】2014年6月11日 申請日期:2012年12月4日 優先權日:2012年12月4日
【發明者】高峰 申請人:廈門億聯網絡技術股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀