oracle中使用substr()后与预期结果不一致

2024-11-19 14:49:38
推荐回答(1个)
回答1:

这是你理解的歧义所致:

select substr('hello world',-1,4) "Substring" from dual;
--这是从倒数第1个开始往后数4个字符,实际上只有一个字符'd'
select substr('hello world',-1,5) "Substring" from dual;
--这个也是一样的道理,要输出'world',应该这样:
select substr('hello world',-5,5) "Substring" from dual;