Maison >base de données >tutoriel mysql >Oralce之递归算法

Oralce之递归算法

WBOY
WBOYoriginal
2016-06-07 17:14:391032parcourir

Oracle递归算法的经典用途,比如 多级部门下,子部门不能作为父部门的父部门。

Oracle递归算法的经典用途,比如 多级部门下,,子部门不能作为父部门的父部门。

有点拗口,比方说吧,爸爸部门下有甲儿子部门和乙儿子部门,甲或乙儿子部门不能成为爸爸部门的上级部门。

这个是很多管理系统的多级分类下的经典需求。


好吧。给出部门表结构--Department。


判断子部门是否能成为爸爸部门的上级部门,采用到了递归。SQL:

其中 CONNECT BY PRIOR  ....  START WITH.....   就是递归。   #deptNo# 、#parentNo# 分别代表 子部门 和 爸爸部门。


如果返回值等于1,则子部门不能成为爸爸部门的上级部门;如果返回值不等于1,反之。

linux

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn