国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

mysql家譜表查詢某人所有后代

來源:懂視網 責編:小采 時間:2020-11-09 09:17:33
文檔

mysql家譜表查詢某人所有后代

mysql家譜表查詢某人所有后代:CREATE TABLE `people` ( `id` INT(11) NOT NULL, `name` VARCHAR(50) NULL DEFAULT NULL, `pid` INT(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ); CREATE DEFINER=`root`@`%` PROCEDURE `getChildren`(IN `parentId` INT) LANGUAGE SQL NOT DET
推薦度:
導讀mysql家譜表查詢某人所有后代:CREATE TABLE `people` ( `id` INT(11) NOT NULL, `name` VARCHAR(50) NULL DEFAULT NULL, `pid` INT(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ); CREATE DEFINER=`root`@`%` PROCEDURE `getChildren`(IN `parentId` INT) LANGUAGE SQL NOT DET

CREATE TABLE `people` (
 `id` INT(11) NOT NULL,
 `name` VARCHAR(50) NULL DEFAULT NULL,
 `pid` INT(11) NOT NULL DEFAULT '0',
 PRIMARY KEY (`id`)
);
 
CREATE DEFINER=`root`@`%` PROCEDURE `getChildren`(IN `parentId` INT)
 LANGUAGE SQL
 NOT DETERMINISTIC
 CONTAINS SQL
 SQL SECURITY DEFINER
 COMMENT '獲取某人所有后代'
BEGIN
 #存放結果的臨時表
 DROP TABLE IF EXISTS children;
 CREATE TEMPORARY TABLE children SELECT 0 pLevel,p.* FROM `people` p WHERE id=parentId;
 #存放中間結果的臨時表
 DROP TABLE IF EXISTS tem;
 CREATE TEMPORARY TABLE tem SELECT id FROM `people` limit 0;
 
 #逐級填充后代
 SET @pLevel=1;
 REPEAT
 #清空上次數據
 TRUNCATE TABLE tem;
 #將當前level的后代id放入臨時表
 INSERT INTO tem SELECT p.id FROM `people` P, children c 
 WHERE p.pid=c.id AND c.pLevel=(@pLevel-1);
 #將當前level的后代數據塞入結果臨時表
 INSERT INTO children SELECT @pLevel pLevel,p.* FROM `people` p, tem t 
 WHERE p.id=t.id;
 SET @pLevel=@pLevel+1;
 UNTIL NOT EXISTS (SELECT * FROM tem) OR @pLevel > 10
 END REPEAT;
 
 #調整表結構,刪除臨時列和不需要的數據
 ALTER TABLE children DROP COLUMN pLevel;
 DELETE FROM children WHERE id=parentId;
 
 #返回結果
 SELECT * from children;
END

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

mysql家譜表查詢某人所有后代

mysql家譜表查詢某人所有后代:CREATE TABLE `people` ( `id` INT(11) NOT NULL, `name` VARCHAR(50) NULL DEFAULT NULL, `pid` INT(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ); CREATE DEFINER=`root`@`%` PROCEDURE `getChildren`(IN `parentId` INT) LANGUAGE SQL NOT DET
推薦度:
標簽: 查詢 所有 某人
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 日韩欧美一区二区三区在线播放 | 四虎91视频 | 日韩精品免费看 | 精品久久久久久久久中文字幕 | 亚洲高清免费 | 欧美成人精品欧美一级乱黄 | 91精品欧美一区二区三区 | 亚洲欧美日韩国产 | 欧美福利在线 | 精品久久久久久综合日本 | 国产精品欧美一区二区三区不卡 | 日韩视频欧美视频 | 国产在线播放一区二区 | 国产精品综合一区二区 | 六十路垂乳熟年交尾正在播放 | 国产高清在线免费视频 | 国产亚洲免费观看 | 欧美极品欧美日韩 | 欧美精品一二区 | 久久久久国产一级毛片高清版 | 欧美第二区 | 国产视频一区二区 | 日韩精品网址 | 国产精品久久久精品三级 | 日本免费一区二区三区 | 久久国产夜色精品噜噜亚洲a | 911亚洲精品国内自产 | 欧美日韩国产精品va | 黄色小视频免费在线观看 | 国内精品线在线观看 | 久久精品a亚洲国产v高清不卡 | 在线观看欧美国产 | 国产资源免费 | 热久久国产欧美一区二区精品 | 国产欧美日韩精品在钱 | 欧美日韩亚洲国产一区二区三区 | 久久一卡二卡 | 欧美日韩国产一区二区 | 免费一区二区视频 | 欧美日韩国产在线成人网 | 久久91精品国产91久久小草 |