Mic*_*hal 12 sql oracle plsql substr
我想将一个字符串修剪为指定的长度.如果字符串较短,我不想做任何事情.我发现了一个函数substr()来完成这项工作.但是,Oracle文档中没有任何内容,如果字符串比最大长度更短,会发生什么.
例如:
select substr('abc',1,5) from dual;
Run Code Online (Sandbox Code Playgroud)
返回'abc',这就是我需要的.
我想问一下这是否安全,因为函数似乎没有为此用法定义.有没有更好的方法来截断?
zar*_*tra 15
这完全没问题,但如果你愿意,你可以使用这个查询:
select substr('abc',1,least(5,length('abc'))) from dual;
Run Code Online (Sandbox Code Playgroud)
如果您想绝对确定单独使用 SUBSTR 不会导致尾随空白(您不会,但有时确实很确定),您可以使用:
SELECT RTRIM(SUBSTR('abc',1,5)) FROM DUAL;
Run Code Online (Sandbox Code Playgroud)
分享和享受。
归档时间: |
|
查看次数: |
44286 次 |
最近记录: |