sql截取取最后一个符号后面的内容(或前面)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012269637/article/details/80804900


SELECT
a.id,a.name,a.dept_id,b.name,b.name_path, REVERSE( LEFT( REVERSE(b.name_path),LOCATE('→' , REVERSE(b.name_path) )-1)  )  ,REVERSE(SUBSTRING(REVERSE(b.name_path),LOCATE('→' , REVERSE(b.name_path) )+1,LENGTH(b.name_path))),1
FROM(
SELECT
id,name,dept_id
FROM
security_org_position  where  data_state=1 and  `name`='文秘'  


) a  INNER JOIN  security_org_department b on a.dept_id=b.id where b.data_state=1  and b.level2!=30000 and b.level3=3 ;

 REVERSE( LEFT( REVERSE(b.name_path),LOCATE('→' , REVERSE(b.name_path) )-1)  )  反转顺序获取第一次符号出现的位置截取

REVERSE(SUBSTRING(REVERSE(b.name_path),LOCATE('→' , REVERSE(b.name_path) )+1,LENGTH(b.name_path))) 反转获取特殊符号第一次出现的位置,从指定位置获取符号前面的数据


猜你喜欢

转载自blog.csdn.net/u012269637/article/details/80804900
今日推荐