众所周知,MySQL 没有 split 功能类函数,但是,按照某个分隔符拆分的情况却经常遇到,于是,我们可以利用 MySQL 提供的函数,自定义一个 split 功能的函数。
自定义 split 功能函数
话不多说,直接上函数定义。
DROP FUNCTION IF EXISTS `SPLIT_STR`;DELIMITER ;;CREATE FUNCTION `SPLIT_STR`( x VARCHAR(255), delimiter VARCHAR(12), pos INT) RETURNS varchar(255) CHARSET utf8mb4RETURN REPLACE( SUBSTRING(SUBSTRING_INDEX(x, delimiter, pos), LENGTH(SUBSTRING_INDEX(x, delimiter, pos -1)) + 1), delimiter, '');;DELIMITER ;
演示结果
话不多说,直接开始演示:
1、先创建一个表 t_size,用来记录各种物品的尺寸
CREATE TABLE `t_size` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键', `name` varchar(255) NOT NULL DEFAULT '' COMMENT '姓名', `size` varch