クエリは のような文字列を返しますAAA[][]AAA[][][][]BBB[][]BBB
。4 つの連続するキャリッジ リターンをセミコロンに置き換える必要がありますが、連続する 2 つのキャリッジ リターンを置き換える必要はありません。私が試してみました
replace(STRING,chr(13)||chr(13)||chr(13)||chr(13),';')
しかし、それは効果がありません。どんな助けでも大歓迎です。
クエリは のような文字列を返しますAAA[][]AAA[][][][]BBB[][]BBB
。4 つの連続するキャリッジ リターンをセミコロンに置き換える必要がありますが、連続する 2 つのキャリッジ リターンを置き換える必要はありません。私が試してみました
replace(STRING,chr(13)||chr(13)||chr(13)||chr(13),';')
しかし、それは効果がありません。どんな助けでも大歓迎です。
CHR(10)
Linux/UNIX システムで使用します。Windows では、キャリッジ リターンは 2 文字で構成されますCHR(10)||chr(13)
。Linux の場合:
SQL> WITH DATA AS (
2 SELECT 'AAA
3
4 AAA
5
6
7
8 BBB
9
10 BBB' txt FROM dual
11 ) SELECT replace(txt, chr(10)||chr(10)||chr(10)||chr(10), ';') rep
12 FROM DATA;
REP
------------------------------
AAA
AAA;BBB
BBB
改行を式で直接使用できるため、改行文字を使用してすべてのプラットフォーム/文字セットで動作させることができます (移植可能であるため、このソリューションをお勧めします)。
SQL> WITH DATA AS (
2 SELECT 'AAA
3
4 AAA
5
6
7
8 BBB
9
10 BBB' txt FROM dual
11 ) SELECT replace(txt, '
12
13
14
15 ', ';') rep FROM DATA;
REP
--------------------------
AAA
AAA;BBB
BBB