オラクルでは、カンマで文字列を切り取る方法はどうなりますか?
Oracleでは、コンマを使用して文字列を切り取るためにSUBSTR関数とINSTR関数を使用できます。
こちらは例です:
strという文字列があると仮定すると、「りんご、バナナ、オレンジ」となります。
カンマで文字列を切り取るために、以下のコードを使用できます:
-- 截取第一个逗号之前的字符串
SELECT SUBSTR(str, 1, INSTR(str, ',')-1) FROM dual;
-- 输出结果为 'apple'
-- 截取第一个逗号之后的字符串
SELECT SUBSTR(str, INSTR(str, ',')+1) FROM dual;
-- 输出结果为 'banana,orange'
-- 截取第二个逗号之前的字符串
SELECT SUBSTR(str, INSTR(str, ',', 1, 2)-1) FROM dual;
-- 输出结果为 'banana'
-- 截取第二个逗号之后的字符串
SELECT SUBSTR(str, INSTR(str, ',', 1, 2)+1) FROM dual;
-- 输出结果为 'orange'
SUBSTR関数を使用すると、文字列の開始位置と長さを指定して切り取ることができます。INSTR関数はコンマの位置を見つけるために使用されます。
上記のコードで重要なのは、dualが仮想のテーブルであり、実際のテーブルが存在しないときにクエリを実行するために使用されることです。必要に応じて、クエリしたいテーブル名に置換することができます。