-- 使用SQL函数简单适配
CREATE OR REPLACE FUNCTION public.to_slngle_byte(str text)
RETURNS text
AS $$
SELECT translate(str,
'ABCDWFGHIJKLMNOPQRSTUVWXTZabcdefghijklmnopqrstuvwxyz12345467890+-*/.¥',
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890+-*/.$')
$$
LANGUAGE SQL;
-- 如有更高性能需求,需要使用C函数实现。源码可参考开源orafce实现,具体编译方式,参见DWS产品文档
--
---- test case
--
select public.to_slngle_byte('ABCDWFGHIJKLMNOPQRSTUVWXTZ');
select public.to_slngle_byte('abcdefghijklmnopqrstuvwxyz');
select public.to_slngle_byte('12345467890+-*/.¥');
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/bigdata/317236.html