Mysql根據(jù)某層部門ID查詢所有下級多層子部門的示例
模擬表和數(shù)據(jù)腳本
復(fù)制以下sql語句生成一個叫sys_dept的表和插入若干構(gòu)造好的有層級關(guān)系的數(shù)據(jù),直接復(fù)制執(zhí)行就ok
DROP TABLE IF EXISTS `sys_dept`; CREATE TABLE `sys_dept` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '部門編號', `p_id` int(11) DEFAULT NULL COMMENT '父級部門編號', `title` varchar(255) DEFAULT NULL COMMENT '父級部門名稱', `is_open` int(11) DEFAULT NULL COMMENT '是否展開(0-展開,1-不展開)', `address` varchar(255) DEFAULT NULL COMMENT '部門地址', `create_time` datetime DEFAULT NULL COMMENT '創(chuàng)建時間', `remark` varchar(255) DEFAULT NULL COMMENT '備注', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO sys_dept (p_id,title,is_open,address,create_time,remark) VALUES (0,'總經(jīng)辦',1,'深圳','2019-04-10 14:06:32.000','大BOSS') ,(1,'銷售部',0,'武漢','2019-04-10 14:06:32.000','程序員屌絲') ,(1,'運(yùn)營部',0,'武漢','2019-04-10 14:06:32.000','無') ,(1,'生產(chǎn)部',0,'武漢','2019-04-10 14:06:32.000','無') ,(2,'銷售一部',0,'武漢','2019-04-10 14:06:32.000','銷售一部') ,(2,'銷售二部',0,'武漢','2019-04-10 14:06:32.000','銷售二部') ,(2,'銷售三部',0,'廣州','2019-04-10 14:06:32.000','銷售三部') ,(2,'銷售四部',0,'廣州','2019-04-10 14:06:32.000','銷售四部') ,(2,'銷售五部',0,'廣州','2019-04-10 14:06:32.000','銷售五部') ,(3,'運(yùn)營一部',0,'武漢','2019-04-10 14:06:32.000','運(yùn)營一部') ,(3,'運(yùn)營二部',0,'武漢','2019-04-10 14:06:32.000','運(yùn)營二部') ,(3,'運(yùn)營三部',0,'武漢','2019-04-10 14:06:32.000','運(yùn)營三部') ,(3,'運(yùn)營四部',0,'武漢','2019-04-10 14:06:32.000','運(yùn)營四部') ,(3,'運(yùn)營五部',0,'武漢','2019-04-10 14:06:32.000','運(yùn)營五部') ,(4,'生產(chǎn)一部',1,'深圳','2019-11-23 09:50:23.000','生產(chǎn)一部') ,(4,'生產(chǎn)二部',1,'深圳','2019-11-23 09:50:23.000','生產(chǎn)二部') ,(4,'生產(chǎn)三部',1,'深圳','2019-11-23 09:50:23.000','生產(chǎn)三部') ,(5,'銷售一部一組',1,'深圳','2019-11-23 09:50:23.000','銷售一部一組') ,(5,'銷售一部二組',1,'深圳','2019-11-23 09:50:23.000','銷售一部二組') ,(5,'銷售一部三組',1,'深圳','2019-11-23 09:50:23.000','銷售一部三組') ,(6,'銷售二部一組',1,'深圳','2019-11-23 09:50:23.000','銷售二部一組') ,(6,'銷售二部二組',1,'深圳','2019-11-23 09:50:23.000','銷售二部二組') ,(17,'生產(chǎn)三部一組',1,'深圳','2019-11-23 09:50:23.000','生產(chǎn)三部一組') ,(17,'生產(chǎn)三部二組',1,'深圳','2019-11-23 09:50:23.000','生產(chǎn)三部二組') ,(17,'生產(chǎn)三部三組',1,'深圳','2019-11-23 09:50:23.000','生產(chǎn)三部三組') ;
根據(jù)部門ID查詢所有子部門
select id,title from ( select t1.id,t1.title, if(find_in_set(p_id, @pids) > 0, @pids := concat(@pids, ',', id), 0) as ischild from ( select id, p_id, title from ssmdemo.sys_dept t order by p_id, id ) t1, ( select @pids := 17) t2 ) t3 where ischild != 0
其中@pids := 17的17就是要查詢的部門ID
到此這篇關(guān)于Mysql根據(jù)某層部門ID查詢所有下級多層子部門的示例的文章就介紹到這了,更多相關(guān)Mysql ID查詢所有下級多層子部門內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL 隨機(jī)函數(shù)獲取數(shù)據(jù)速度和效率分析
最近做項目,需要做一個從mysql數(shù)據(jù)庫中隨機(jī)取幾條數(shù)據(jù)出來??偹苤?,order by rand 會死人的。。因為本人對大數(shù)據(jù)量方面的只是了解的很少,無解,去找百度老師。。搜索結(jié)果千篇一律。特發(fā)到這里來,供大家學(xué)習(xí),需要的朋友可以參考下2016-11-11
使用Visual Studio Code連接MySql數(shù)據(jù)庫并進(jìn)行查詢
這篇文章主要介紹了使用Visual Studio Code連接MySql數(shù)據(jù)庫并進(jìn)行查詢,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
mysql中刪除數(shù)據(jù)的四種方法小結(jié)
在MySQL數(shù)據(jù)庫中,刪除數(shù)據(jù)是一個常見的操作,它允許從表中移除不再需要的數(shù)據(jù),本文就來介紹一下四種方法,具有一定的參考價值,感興趣的可以了解一下2023-10-10
macOS 下的 MySQL 8.0.17 安裝與簡易配置教程圖解
這篇文章主要介紹了macOS 下的 MySQL 8.0.17 安裝與簡易配置教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09
MySQL使用MD5加密算法進(jìn)行數(shù)據(jù)加密功能
在現(xiàn)代的數(shù)據(jù)庫應(yīng)用中,數(shù)據(jù)的安全性和隱私性變得尤為重要,MySQL作為最流行的關(guān)系型數(shù)據(jù)庫之一,提供了多種加密功能,允許用戶對數(shù)據(jù)進(jìn)行加密和解密操作,在這篇文章中,我們將深入探討MySQL的加密功能,并重點(diǎn)介紹如何使用MD5加密算法進(jìn)行加密,需要的朋友可以參考下2024-12-12

