jus*_*ess 3 sql oracle substring
要从oracle sql 中的字符串中检索位置 X 和 Y 之间的字符,我可以
substr(string_var, X, Y)
Run Code Online (Sandbox Code Playgroud)
如果我需要从位置 X 和 Y 之间的数字中获取数字怎么办?(即,如果我想要数字 123456 = 34 中的第三和第四位数字)
我知道我可以
substr(to_char(numeric_var), X, Y)
Run Code Online (Sandbox Code Playgroud)
但是如果我需要将输出视为数字呢?我必须做吗
to_number(substr(to_char(numeric_var), X, Y))
Run Code Online (Sandbox Code Playgroud)
或者是否有与 substr 等效的数字字段?
Oracle 会为你做类型转换:
with foo(bar) as
(select 123456 from dual union
select 654321 from dual union
select 434343 from dual)
select substr(bar,3,2),
substr(bar,3,2) + 10
from foo;
SUBSTR(BAR,3,2) SUBSTR(BAR,3,2)+10
--------------- ------------------
34 44
43 53
43 53
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12361 次 |
| 最近记录: |