oracleでは、特定の記号でフィールドを分割する方法はありますか?
OracleのSUBSTR関数とINSTR関数を使用して、フィールドを指定された記号で分割することができます。
“field”というフィールドがあり、分割する値が含まれていると仮定します。指定された記号に従ってフィールドを分割するために、以下のSQL文を使用できます。
SELECT SUBSTR(field, 1, INSTR(field, '指定符号', 1, 1) - 1) AS first_part,
SUBSTR(field, INSTR(field, '指定符号', 1, 1) + 1, INSTR(field, '指定符号', 1, 2) - INSTR(field, '指定符号', 1, 1) - 1) AS second_part,
SUBSTR(field, INSTR(field, '指定符号', 1, 2) + 1) AS third_part
FROM 表名;
実際のフィールド名に”field”を、使用したい記号に”指定符号”を、実際のテーブル名に”表名”を置き換えてください。
上記のSQL文は、指定された記号でフィールドを最初に出現した順番と2番目に出現した順番に分割し、その結果をそれぞれ”first_part”、”second_part”、”third_part”という列に保存します。必要に応じて分割回数や保存結果の列名を調整することができます。