0

Oracle SQLの select ステートメントを使用して、文字列の特定の部分 (複数の用語から作成) を抽出する方法を理解しようとしています。

列の値は のように見えますが、'2E WK 12-345-678 TM 13-06-2017'各行の形式がわずかに異なります。

'123-456-789'ここで、各行の一部のみを表示する新しい列を作成したいと考えています。問題は次のとおりです:各行から3 つの数字、ハイフン、3 つの数字、ハイフン、3 つの数字のこの正確な形式をどのように識別できますか?

問題の部分が常に同じ位置にあるとは限らないため、SUBSTR(...) は私のためにそれをしませんでした。次に、 REGEXP_LIKE(...) を適用しようとしましたが、これも正しい値を返しません。

これを行うには、SQL ステートメントをどのように記述すればよいですか? 助けていただければ幸いです。

文字列の例:

2E XX **18-580-0111**
**18-990-0020**: 11.2.11-11.14.19
**65-660-0838** 2015 xxxx core sysxx
**78-140-401** t/m 0019

** = specific part of the string that's needed

敬具!

4

1 に答える 1