PL SQL substr:来自较小输入的最后n个字符

时间:2017-10-30 12:40:48

标签: oracle plsql substr

情况:我必须在输出字段中显示某列的值(字符串)。我想显示所述值的最后n个字符。

问题:字符串的长度大于< ñ。在这种情况下,substring的返回为空/ NULL。这很奇怪,我本来希望得到字符串的所有字符,可能还有空格。我认为,这是在案例中发生的事情"从起始位置开始的子串" (而不是"来自结束位置"就像我的情况一样)。

代码:

dbms_output.put_line(substr(l_string, -n));

问题:

  • 有人看到这种行为的原因吗?
  • 有没有办法在不使用其他操作(例如lpad / rpad / replace)的情况下获得预期/想要的行为?

(我现在最好的替代方案是在变量中写一次并改用它。但也许有人知道更好的东西。)

0 个答案:

没有答案