【MySQL】字符串截取函数substring_index

业务场景描述:如何根据分隔符切割字符串?使用函数SUBSTRING_INDEX()根据指定分隔符切割,分隔符可以是字符串等。

 

语法:substring_index(str,delim,count)

说明

  • str:被截取字符串
  • delim:分隔符,截取时依据的关键字,区分大小写
  • count:从第几个分隔符开始截取

count如果为正数,则返回第count个分隔符左侧的所有内容(从左到右截取);如果为负数,则返回第count个分隔符右侧的所有内容(从右到左截取)。

 

示例

SELECT '32栋-3层-301室' AS 门牌号,
-- 在第一个分隔符从左到右截取
SUBSTRING_INDEX('32栋-3层-301室','-', 1) AS 楼栋号, 
SUBSTRING_INDEX(
-- 在第二个分隔符从左到右截取
SUBSTRING_INDEX('11栋-3层-301室','-',2)
,'-',-1) AS 楼层,
-- 在第三个分隔符从右到左截取
SUBSTRING_INDEX('32栋-3层-301室','-',-1) AS 房间号;

 

posted @ 2020-06-19 20:16  楼兰胡杨  阅读(524)  评论(0编辑  收藏  举报