mysql中返回上级_MySql 获取当前节点及递归所有上级节点
-- MySql 获取当前节点及递归所有上级节点
-- 参数说明:resultField:查询返回字段,idd 要查询的资源ID值,idFieldName ID字段名,parentIdFieldName 上级ID字段名,tableName 表名,isContainMySelf 是否包含自己
DROP procedure IF EXISTS pro_getParentList;
create procedure pro_getParentList(in resultField varchar(4000),in myid varchar(100),in idFieldName varchar(100),in parentIdFieldName varchar(100),in tableName varchar(100),isContainMySelf int)
begin
drop table if exists tmpParent;
CREATE TABLE tmpParent(temId varchar(100)) ;
set @tempParentId=myid;
set @myDoflag=1;
WHILE @myDoflag>0 do
set @ssss = CONCAT(' select ', parentIdFieldName, ', count(*) INTO @tempParentId,@myDoflag from ',tableName ,' where ',idFieldName,'=','''',@tempParentId,'''');
prepare strsql from @ssss;
execute strsql;
deallocate prepare strsql;
if(@myDoflag>0) THEN
set @insertSql = CONCAT('INSERT into tmpParent(temId) values (',"'",@tempParentId,"'",')');
prepare preSql1 from @insertSql;
execute preSql1;
deallocate prepare preSql1;
end if;
end WHILE;
IF (isContainMySelf=1) THEN
INSERT into tmpParent(temId) values (myid);
END IF;
SET @fieldSql=concat(' SELECT ',resultField);
set @strsql = CONCAT(@fieldSql,' from ', tableName,' s ',' inner join tmpParent t on t.temId=s.',idFieldName,' order by s.',idFieldName,' asc');
prepare preSql from @strsql;
execute preSql;
end
mysql中返回上级_MySql 获取当前节点及递归所有上级节点相关推荐
- MySql 获取当前节点及递归所有上级节点
-- MySql 获取当前节点及递归所有上级节点 -- 参数说明:resultField:查询返回字段,idd 要查询的资源ID值,idFieldName ID字段名,parentIdFieldNam ...
- mysql groupby 取值_mysql获取groupby总记录行数的方法
本文实例讲述了mysql获取group by总记录行数的方法,分享给大家供大家参考.具体方法分析如下: 一般来说,mysql获取group by内部可以获取到某字段的记录分组统计总数,而无法统计出分组 ...
- mysql 获取结果_【原创】7. MYSQL++中的查询结果获取(各种Result类型)
在本节中,我将首先介绍MYSQL++中的查询的几个简单例子用法,然后看一下mysqlpp::Query中的几个与查询相关的方法原型(重点关注返回值),最后对几个关键类型进行解释. 1. MYSQL++ ...
- tsql是mysql中的吗_Mysql中的sql是如何执行的
MySQL中的SQL是如何执行的 MySQL是典型的C/S架构,也就是Client/Server架构,服务器端程序使用的mysqld.整体的MySQL流程如下图所示: MySQL是有三层组成: 连接层 ...
- mysql中如何取月份_mysql中如何取月份?
在mysql中可以使用MONTH()函数来获取月份,它会从指定日期值中获取月份值.MONTH()函数需要接受date参数,语法格式为"MONTH(date);",返回指定date对 ...
- mysql 函数返回表格_mysql 数据分析如何实现日报、周报、月报和年报?
推荐阅读: MySQL复习:20道常见面试题(含答案)+21条MySQL性能调优经验 秋招Java面试大纲:Java+并发+spring+数据库+Redis+JVM+Netty等 以天为统计周期,是常 ...
- mysql中连接运算符_MySQL的运算符
1.算术运算 运算符 作用 + 加法 - 减法 * 乘法 / (div) 除法 (整除) % (mod) 求余 运算代码 结果 运算代码 结果 select -4/-3; //1.3333 selec ...
- mysql中基字符集_Mysql中的字符集
1.字符集基础 在计算机的眼中只有0和1,但是在人类世界中却有上百种语言,每种语言又有成千上万的文字,那么如何在计算中表示人类世界中的这些文字呢? 在上个世纪60年代的时候,美国首先定义了一套规则,在 ...
- mysql sum返回类型_MySQL的sum函数返回的类型
今天项目切换数据库时,出错 访问数据库的代码大概是这样: String sql = "select sum(number) as sumNumberOfOneDay from tableNa ...
最新文章
- 一本Python数据分析入门宝藏书,快藏不住了!
- (003) java后台开发之设置Eclipse代码提示和快捷键
- 编码区和非编码区的关系
- Android中asset和raw的区别
- Cracer渗透视频课程学习笔记——信息搜集
- GBDT(Gradient Boosting Decision Tree
- git 改了一段代码不想要了_Git - 如何将master/其他分支上修改代码不提交直接移到新建分支...
- java csrf_java使用jsp servlet来防止csrf 攻击的实现方法
- Boost::context模块callcc的stack测试程序
- 破解百度网盘的Pandownload开发者被捕,让人唏嘘
- IBASE save - my toolset investigation
- MySQL 覆盖索引、最左前缀原则、索引下推
- 漫画 | 让设计师崩溃的十个瞬间
- matlab 高级函数 —— circshift、squeeze
- 网络攻击导致企业遭受损200万美元
- 当你灵感枯竭的时候,如何深挖客户需求?采用曼陀罗思考法(5W1H模式),相信你会找到出路
- WebRoot和Web-Info区别
- Java项目:医院挂号预约管理系统(java+SSM+HTML+JavaScript+jsp+mysql)
- 在线正则表达式大全测试
- 二.微信小程序代码的构成
热门文章
- 基于Springboot外卖系统05:用户非登陆状态的页面拦截器实现
- 外设citrix xendesktop 手写笔
- 双评价技术指南2020_双评价技术指南试评价培训交流会成功召开
- 拳王虚拟项目公社:聊聊虚拟资源项目虚拟资源倒卖生意怎么赚钱?
- CryENGINE3系列总结教程之UI/HUD(一)制作生命条弹药条Flash部分
- linux 查看进程 发包,Linux网络发包流程
- 各大网商店铺历史价格分析原理
- 【项目管理】采购、外包、合同
- 小米2s 用线刷,刷回MIUI V5了
- linux lotus notes实例,在Ubuntu 6.10 系统中安装Lotus Notes 7详细图解