12

我有一个中间有空格的字符串,我需要在空格之前获取第一个字符串(可以是数字)。

 WITH test_data AS (
  SELECT '123642134  10' AS quarter_cd FROM dual UNION ALL --VALID
)

 select *
  from test_data
 where regexp_like(quarter_cd, '', 'c')

输出应该是:

123642134
4

2 回答 2

30
Substr (quarter_cd, 1,instr(quarter_cd,' ') - 1)

应该这样做。

于 2013-01-31T08:34:40.563 回答
0
SELECT Rtrim(Substr('123642134  10',1,Instr('123642134  10',' '))) AS quarter_cd FROM dual;

上层查询中使用的字符串函数的使用

  • Instr()- 从给定字符串中获取任何字符或空格的位置。
  • Substr()- 从给定字符串中获取子字符串。
  • Rtrim()- 从右侧删除空格。
于 2019-01-21T12:58:22.600 回答