PGSQL 转换全角到半角方法
一、采用函数,适用于符号比较多的情况;

1 --全角到半角转换函数 2 create or replace function CnFullToHalf(s character varying) 3 returns character varying 4 as 5 $$ 6 declare 7 retval character varying; 8 c character varying; 9 l integer; 10 11 begin 12 l=length(s); 13 retval=''; 14 while l>0 loop 15 c=left(s,1); 16 if c=' ' then -- 全角空格 17 retval=retval||' '; 18 elsif c>='!' and c<='~' then -- 全角!到~的范围 19 retval=retval || chr(ascii('!')+ascii(c)-ascii('!')); 20 else 21 retval=retval||c; 22 end if; 23 s=substring(s,2,l-1); 24 l=l-1; 25 end loop; 26 return retval; 27 end; 28 $$language plpgsql strict immutable;
原文 :[PostgreSQL]全角和半角字符转换函数 – QDAC数据访问组件网站
二、采用REPLACE函数,适用符号较少的情况 ;
update client set name=replace(name,'(','(') update client set name=replace(name,')',')') --将全角括号 替换成 半角的;
三、找出有重复的进行删除 ;
select 'delete from client where name='''||name||''';' from client where replace(name,'(','(') in (select name from client) and name like '%(%'
select 'delete from client where name='''||name||''';' from client where replace(replace(name,'(','('),')',')') in (select name from client) and name like '%(%'
活到老,学到老。
分类:
pgsql
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?