答案:使用REPLACE函数嵌套处理换行符和回车符。在SQL中可通过REPLACE(REPLACE(column, CHAR(10), ''), CHAR(13), '')清除\n和\r,适用于MySQL、SQL Server等;PostgreSQL可用TRANSLATE或E''转义。

在 SQL 中去掉字符串中的换行符,可以使用不同的字符串函数,具体方法取决于你使用的数据库系统。以下是几种常见数据库的处理方式。
大多数数据库支持 REPLACE 函数,可以通过它将换行符替换为空字符串。
换行符通常有以下几种形式:
因此,建议同时处理这几种情况。
示例(适用于 MySQL、SQL Server、SQLite 等):SELECT REPLACE(REPLACE('Hello\nWorld\r', CHAR(10), ''), CHAR(13), '');说明:
SQL Server 支持更直观的写法,也可以嵌套 REPLACE 处理多种符号。
SELECT REPLACE(REPLACE(your_column, CHAR(13), ''), CHAR(10), '') FROM your_table;
或者使用字符串字面量:
SELECT REPLACE(REPLACE(your_column, ' ', ''), '\r', '')
注意:某些客户端中直接写换行符可能不被允许,推荐使用 CHAR(13) 和 CHAR(10)。
MySQL 同样使用 REPLACE 和 CHAR 函数:
SELECT TRIM(REPLACE(REPLACE(your_column, '\n', ''), '\r', '')) FROM your_table;
也可以用 CHAR(10) 和 CHAR(13) 替代 '\n' 和 '\r',更可靠。
PostgreSQL 支持标准函数,还可以使用 TRANSLATE 一次性替换多个字符:
SELECT TRANSLATE(your_column, E'\r\n', '') FROM your_table;
或使用 REPLACE 嵌套:
SELECT REPLACE(REPLACE(your_column, E'\n', ''), E'\r', '')
注意:在 PostgreSQL 中,需要使用 E'' 表示转义字符串。
基本上就这些常用方法。根据你的数据库类型选择对应函数,关键是识别并清除 \n 和 \r 两种换行符号。嵌套 REPLACE 是最通用可靠的方案。
以上就是SQL 字符串函数如何去掉换行符?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号