7

MySQL 列から末尾の改行を削除したいと考えています。trim() は空白のみを削除しますが、末尾の改行も削除したいと思います。誰でも提案できますか?

4

7 に答える 7

4

この問題に遭遇しただけで、このように処理しました。

UPDATE table_name SET col_name = REPLACE(TRIM(TRAILING ' ' FROM col_name), 
                                         TRIM(TRAILING '\r' FROM col_name), 
                                         TRIM(TRAILING '\n' FROM col_name))

これにより、改行 (\n)、改行 (\r)、および空白が削除されます。

于 2015-04-09T10:09:30.150 に答える
2

これにより、すべてのエスケープ文字が削除されます。

TRIM(TRAILING '\\' FROM (REPLACE(REPLACE(REPLACE(column_name, '\n', ' '), '\r', ' '), '\\', ' ')))
于 2016-10-01T01:14:33.470 に答える
0

EternalHour の回答に基づく:

UPDATE TABLE_NAME SET `COLUMN_NAME` = TRIM(TRIM(TRAILING '\r' FROM TRIM(TRAILING '\n' FROM TRIM(`COLUMN_NAME`))))

これは末尾を 1 つずつ削除する\r\nため、改行またはキャリッジ リターン、またはその両方であり、削除され、プロセスの前後の空白も削除されます。

于 2016-07-29T05:32:18.920 に答える
0

次のようなことを試してください:

REPLACE(FIELD,'\r\n',' ')
于 2013-06-11T13:14:54.123 に答える