MySQL 拆分字符串函数Split

MYSQL 目前没有Hive或者Java。python这列直接split的函数,需要自己定义一个,复制代码,一键使用

CREATE DEFINER=`root`@`localhost` FUNCTION `func_split_str`(
  x VARCHAR(255), --字符串
  delim VARCHAR(12), --分隔符
  pos INT --按分隔浮拆分后的第几个结果,从1开始数
) RETURNS varchar(255) CHARSET utf8
    DETERMINISTIC
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
       CHAR_LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
       delim, '')

调用方法简单

select func_split_str('This|is|a test string','|',1) as split_str
--retrun This
select func_split_str('This|is|a test string','|',2) as split_str
--retrun is

你可能感兴趣的:(mysql,数据库)