大家好,又见面了,我是你们的朋友全栈君。
使用mysql过程中根据实际业务的开发需求和表的设计有时候我们需要在sql中根据某个字符串截取并且取值:demo如下:
ifnull(max(SUBSTRING_INDEX(c.check_score,’,’,-1)),’-‘) swjdf //按照,截取check_score这个字段的值,-1取的是倒数第一位即最后一位
SUBSTRING_INDEX函数语法:
SUBSTRING_INDEX(str,delim,count)
str: 待分割字符串
delim:分割符
count: 取到第几个分割后的子字符串
该函数返回分隔符delim的出现次数之前的字符串str的子字符串。
如果count为正数,则返回最后分隔符左边的所有内容(从左边计数)。
如果count为负,则返回最后分隔符右侧的所有内容(从右开始计数)。
SUBSTRING INDEX()在搜索delim时执行区分大小写的匹配。
mysql> SELECT SUBSTRING_INDEX(‘www.mysql.com’, ‘.’, 2);-> ‘www.mysql’mysql> SELECT SUBSTRING_INDEX(‘www.mysql.com’, ‘.’, -1);-> ‘com’
SUBSTRING_INDEX(ctgr, ‘-‘, 1) — 获取一级目录
SUBSTRING_INDEX(SUBSTRING_INDEX(ctgr,’-‘,2), ‘-‘, -1) — 获取二级目录(先获取前面两级,然后截取末位的子串)
SUBSTRING_INDEX(ctgr, ‘-‘, -1) — 获取三级目录
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131708.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...