How to remove carriage returns in a text field in sqlite?

前端 未结 2 1069
迷失自我
迷失自我 2020-12-28 19:20

I have an sqlite database with over 400k records. I have just found that some of the text fields have carriage returns in them and I wanted to clean them out. I wanted to co

2条回答
  •  一向
    一向 (楼主)
    2020-12-28 20:01

    SQLite lets you put line breaks inside string literals, like this:

    SELECT replace(dirty_text_field, '
    ', '');
    

    If you don't like this syntax, you can pass the string as a BLOB: X'0D' for \r or X'0A' for \n (assuming the default UTF-8 encoding).

    Edit: Since this answer was originally written, SQLite has added a CHAR function. So you can now write CHAR(13) for \r or CHAR(10) for \n, which will work whether your database is encoded in UTF-8 or UTF-16.

提交回复
热议问题