0
Table A
ID     ID_Descr
1     'DUP 8002061286'
2     'DUP 8002082667  '
3     ' 8002082669 DUP'

次の条件で ID_Descr フィールドから文字列を抽出したいと思います。

  1. 文字列は常に 8 から始まります
  2. 文字列の長さは常に 10 桁です

これは、文字列の左右のすべてを削除することを意味します (例: '8002082669')。どうすればこれを達成できますか?REGEXP_SUBSTR を使用していますか?

Oracle 11g を使用しています。

ありがとう!

4

2 に答える 2

3

これを使用することもできますがregexp_substr()、私は別のアプローチを取ります。'8'using を探してinstr()、次の 10 文字を取得します。

select substr(id_descr, instr(id_descr, '8'), 10)

これは最も簡単な解決策のようです。

于 2015-03-20T02:23:50.137 に答える