mysql 函数 + 存储过程
来源:互联网 发布:数据库的服务器名称 编辑:程序博客网 时间:2024/05/19 00:47
SET GLOBAL log_bin_trust_function_creators = 1;
#1. 函数func_splitStringTotal:将字符串按指定方式分割,并计算单元总数
DROP function IF EXISTS `func_get_splitStringTotal` ;
CREATE FUNCTION `func_get_splitStringTotal`(
f_string varchar(10000),f_delimiter varchar(50)
) RETURNS int(11)
BEGIN
return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')));
END;
select func_get_splitStringTotal('1,2,3,4,5,6,7',',');
#2.函数func_splitString:将字符串按指定方式分割,获取指定位置的数
DROP function IF EXISTS `func_splitString` ;
CREATE FUNCTION `func_splitString`
( f_string varchar(1000),f_delimiter varchar(5),f_order int)
RETURNS varchar(255) CHARSET utf8
BEGIN
declare result varchar(255) default '';
set result = reverse(substring_index(reverse(substring_index(f_string,f_delimiter,f_order)),f_delimiter,1));
return result;
END;
SELECT func_splitString('1,2,3,4,5,6,7',',',5);#取第五个值
#3.过程splitString 将字符串分割,并放到临时表tmp_split 里面
DROP PROCEDURE IF EXISTS `splitString` ;
CREATE PROCEDURE `splitString`
(IN f_string varchar(1000),
IN f_delimiter varchar(5))
BEGIN
declare cnt int default 0;
declare i int default 0;
set cnt = func_get_splitStringTotal(f_string,f_delimiter);
DROP TABLE IF EXISTS `tmp_split`;
create temporary table `tmp_split` (`val_` varchar(128) not null) DEFAULT CHARSET=utf8;
while i < cnt
do
set i = i + 1;
insert into tmp_split(`val_`) values (func_splitString(f_string,f_delimiter,i));
end while;
END;
#调用存储过程
call splitString('a,s,d,f,g,h,j',',');
#查看调用结果
SELECT * from tmp_split;
0 0
- mysql 函数 + 存储过程
- mysql函数+存储过程
- MySQL存储过程、函数
- MySQL存储过程、函数
- mysql存储过程,函数
- mysql存储过程存储函数
- [MySQL] MySQL存储过程与存储函数
- 【MySQL】MySQL函数、自定义函数、存储过程
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程基本函数
- mysql存储过程及函数
- 【LeetCode】 Best Time to Buy and Sell Stock I II III IV 解题报告
- keepalived配置
- 线性表的基本运算及多项式的算术运算
- linux多命令协作:管道及重定向
- Andrew Ng Machine Learning 专题【K-Means】
- mysql 函数 + 存储过程
- C++继承
- BZOJ 1010 [HNOI2008]玩具装箱toy 斜率优化DP
- 测试用例设计
- 安卓点击事件的使用,并界面传值
- 【SQL】NULLS FIRST的作用
- POJ 1743 Musical Theme
- iOS雨笙 NSTimer(计时器)和NSUserDefaults(最轻量级的持久化)的简单应用
- 程序员的思维(转载于伯乐在线-author:水流年)