健康一贴灵,专注医药行业管理信息化

零宽度字符串

  • 零宽度非连接符 (U+200C) 在 UTF-8 中编码为 E2 80 8C
  • 今天在数据库的唯一字段abc中发现两个看起来一样的字符串,造成数据重复录入。
  • SELECT abc, encode(abc::bytea, 'hex') AS hex_value 
    FROM client 
    WHERE abcLIKE '12341200730008469C%';

    image

     用上述SQL执行后,发现了小尾巴。

  • -- 移除尾部空格及零宽字符
    UPDATE client
    SET registerednumber = regexp_replace(registerednumber, '[\u200C-\u200F\s]+$', '', 'g')
    WHERE registerednumber ~ '[\u200C-\u200F\s]+$';

    一执行发现以前好多重复的记录。。。

posted @ 2025-07-30 16:16  一贴灵  阅读(9)  评论(1)    收藏  举报
学以致用,效率第一