一、说明
SQL中截取某个字符串字段后N位的业务场景其实并不多,偶尔一次业务中使用,有参考就行,在Oralce和达梦数据库中,主要用到greatest (max(one),max(two),max(three))函数,这个函数是求多列的最大值,这里暂时不做详解,可以自行了解一番,另外就是很熟悉的substr()函数和length()函数,不再赘述,在MySQL中就很好理解了,直接使用right(str,n)函数即可。
二、语法及测试
- Oracle、达梦语法:
-- str:字符串,n:后n位
select substr(str,greatest(-n,-length(str)),n) from dual;
- 测试:
-- 预期结果:golang
select substr('demo,java,golang',greatest(-6,-length('demo,java,golang')),6) from dual;
- 达梦环境测试结果:
- MySQL语法:
-- str:字符串,n:后n位
select right(str,n);
- 测试:
三、总结
知道即可,玩一玩!!!
献上一份热心网友收藏多年的MySQL函数