如果未找到分隔符,Mysql中的Substring_index应返回空字符串

时间:2016-12-16 10:33:31

标签: mysql

 E:g  

 Case 1: delimeter not exist 

 string = "abcdefg"

      mysql> select substring_index(string,'z',1) from table;
      output: abcdefg
      expected output : blank string ""

 Case 2: delimeter exist 

 string = "abczdefg"

       mysql> select substring_index(string,'z',1) from table;
       output: abc
       expected output : abc (same as substring returns)

如果'z'(分隔符)不存在,我希望这个选择查询应该返回空字符串 如果delimeter存在于string中,则substring_index是常规功能

Query i可以对我的预期输出做什么修改?

1 个答案:

答案 0 :(得分:2)

Substring_index完全应该做的:) 对于您的任务,您可以使用substring

set @str = "abcdef";
select substring(@str, 1, LOCATE('z', @str) - 1) from dual;

这将完全符合您的要求