在 Postgres 中修剪字符串中的中间空格

Sai*_*waj 5 sql postgresql function

结果,只需要删除中间空格。

只需打印连字符 (-) 之前的第一部分以及百分比。

你能帮忙吗?

输入字符串:AMAZON - 25%;SAP - XXXXX - 45%;微软 - XXX&YYY - 30%

询问:

SELECT 
translate(left("S_Name",POSITION(',' IN "S_Name")-1),'(,),{,},"','') as FirstPart,
translate(SUBSTRING ("S_Name",length("S_Name") -4 ,4),'(,),{,},"','')as secondpart;
Run Code Online (Sandbox Code Playgroud)

Ant*_*rig 1

regexp_split_to_table可用于通过分隔符将值拆分为字符串;,然后您可以使用它split_part来获取所需结果的第一部分和第二部分。

Select trim(split_part(t,' - ',1)) As First,
       trim(reverse(split_part(reverse(t),' - ',1))) As Second
From regexp_split_to_table('SUCCESS FACTORS - 25%; SAP - XXXXX - 45%; MICROSOFT - XXX&YYY - 30%', ';') As t;
Run Code Online (Sandbox Code Playgroud)

数据输出:

第一的 第二
成功因素 25%
树液 45%
微软 30%