天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 2535|回复: 0

[Iscript] 获取当前用户的所有上级【SQL-所有上级】

[复制链接]
spiral 发表于 2013-6-8 10:24:18 | 显示全部楼层 |阅读模式
本帖最后由 spiral 于 2013-6-8 10:28 编辑

Q:如何获取当前用户的上级、上级的上级、上级的上级的上级............

A:具体您可以参考以下说明:
在oracle下,使用start with  connect by prior即可
  1. select * from t_user start with id = '11e1-7f98-dc0c84d6-a04d-05b43c063ac2' connect by prior id = superior
复制代码
----------------------------------------------------------------------------
在sqlserver下,只能使用存储过程完成,大致代码见下:
  1. with cte as
  2. (
  3.     select *, 0 as lvl from t_user
  4.     where Id = '11e0-4b86-4e2e6951-a06c-ade030ea555d'
  5.     union all
  6.     select d.*,lvl + 1 from cte c inner join t_user d
  7.     on c.Id = d.superior
  8. )
  9. select * from cte
复制代码
----------------------------------------------------------------------------
在最新版本的mysql下,只能使用存储过程以及递归完成,大致可以参考以下链接:
http://blog.csdn.net/ACMAIN_CHM/article/details/4142971

ps:Myapps打包出去的绿色版的版本是5.1.37,还不支持以上的解决方案

----------------------------------------------------------------------------

如果希望通过使用脚本的方式来获取可以参考下帖:
http://www.teemlink.com/bbs/viewthread.php?tid=166074

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 15:49

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表