cokebar
V2EX  ›  Oracle

Oracle SQL 中的换行符替换问题

  •  
  •   cokebar · Sep 9, 2021 · 1745 views
    This topic created in 1713 days ago, the information mentioned may be changed or developed.

    SQL 初学者,遇到个问题求助 某个字段中的多行文本的换行符出现了两种:crlf 和 lf, 目前想将其统一替换为 crlf 或者 lf,该怎么搞

    NotFoundEgg
        1
    NotFoundEgg  
       Sep 9, 2021
    CRLF 是\r\n,LF 是\n ;在 oracle 里,\r 是 chr(13),\n 是 chr(10)
    我感觉可以试试
    UPDATE your_tablename SET your_column = REPLACE(your_column, chr(13), '') WHERE xxx

    记得备份,记得备份,记得备份
    NotFoundEgg
        2
    NotFoundEgg  
       Sep 9, 2021
    @NotFoundEgg 其实是取巧,直接把\r 替换空,完整的应该是
    UPDATE your_tablename SET your_column = REPLACE(your_column, chr(13)||chr(10), chr(10)) WHERE xxx
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3117 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 12:39 · PVG 20:39 · LAX 05:39 · JFK 08:39
    ♥ Do have faith in what you're doing.