遞迴刪除解除樹狀關係

2021-10-06 13:28:23 字數 798 閱讀 1087

業務背景:

公司會員可以發展分銷團隊,兩級分銷內可以擁有一些業務規劃的羊毛。

新需求:

會員在入職公司員工後,需要解綁團隊關係。

坑:

團隊關係是遞迴插入的,最末端節點依然與根節點有資料層面的聯絡

解覺方案:

介面遞迴刪除解除樹狀關係

**片段:

delete cc 

from

tree cc,

(select

c.memberkey,

c.parentkey,

c.`level`

from tree c

inner join

tree c1

on c.memberkey = c1.memberkey

where

c1.parentkey = #

and c1.`level` = #

and c.`level` > # ) ccc

where

cc.memberkey = ccc.memberkey

and cc.parentkey = ccc.parentkey

and cc.`level` = ccc.`level` ;

以上是對歷史資料的處理,遞迴在**中迴圈,主要實現業務,sql本身還存在優化空間,歡迎大佬點評

樹狀遞迴查詢

樹狀等級查詢 所有資料 從mysql裡面輸出的全部是字串型別 list array array cat id 8 cat name 分類fff sort order 30 parent id 1 array cat id 1 cat name 分類aaa sort order 50 parent i...

oracle遞迴查詢,修改及刪除父子關係

資料庫中常要處理父子關係的記錄,在oracle中可以用查詢語句一次把所有的子記錄全部取出來。例如下 t1t11 t111 t1111 t12t121 t1211 db資料字段如下 task id task name parent task id 000001 t1 000002 t11 000001...

遞迴關係求解

問題 假設 乙個反應器中有兩類粒子 和 設每秒鐘乙個 粒子 成3個 粒子,而每秒鐘乙個 粒子 成乙個 粒子和兩個 粒子。假如在t 0時 反應器中有乙個 粒子,求t秒時反應器中 粒子和 粒子的數目。根據關係列出遞迴關係 a t b t 1 b t 3 a t 1 2 b t 1 參考程式 includ...