我正在使用我的 java 代碼讀取表格并從中創建一個 csv 文件。所以我轉換的 4 行類似于下面 -sam , 18 , banker , He likes to play football jam , 28 , hacker , he likes nothing但是在某些情況下,當最后一個 varchar2 列包含 \n 時,它會變成這樣sam , 18 , banker , He likes to play football jam , 28 , hacker , he likes nothing當我嘗試讀取文件時,每行一次讀取一行,由于很少有單詞被推送到后續行,因此我無法解析數據。有沒有辦法在我的查詢中的列中轉義換行符以使其成為一行?我的sql查詢select name , age , job , hobbies from person_details我正在使用 csvwriter 生成 csv 文件 -CSVWriter csvWriter = new CSVWriter(new FileWriter(results), DELIMITER, Character.MIN_VALUE, CSVWriter.NO_QUOTE_CHARACTER, CSVWriter.DEFAULT_LINE_END);我使用下面的刪除換行符。然而,也在尋找保護它們的方法——replace (replace (hobbies, chr (13), ''), chr (10), ' ')
3 回答

繁華開滿天機
TA貢獻1816條經驗 獲得超4個贊
使用REPLACE或TRANSLATE函數:
SELECT NAME, AGE, JOB, REPLACE(HOBBIES, CHR(10), '')
FROM PERSON_DETAILS
或者
SELECT NAME, AGE, JOB, TRANSLATE(HOBBIES, 'x' || CHR(10) || CHR(12) || CHR(13), 'x')
FROM PERSON_DETAILS -- LF FF CR
TRANSLATE如果您要進行多個翻譯,則非常有用。在這里,我增加了響應以消除 HOBBIES 中的回車、換頁和換行。

阿波羅的戰車
TA貢獻1862條經驗 獲得超6個贊
\n
查詢時刪除。使用以下查詢。
select name , age , job , REPLACE(hobbies,CHR(10),'') "hobbies" from person_details
添加回答
舉報
0/150
提交
取消