In the result, want only intermediate spaces to be removed.
Need to print only first part before hypen (-) along with Percentages.
Can you please help.
Input String: AMAZON - 25%; SAP - XXXXX - 45%; MICROSOFT - XXX&YYY - 30%
Query:
SELECT 
translate(left("S_Name",POSITION(',' IN "S_Name")-1),'(,),{,},"','') as FirstPart,
translate(SUBSTRING ("S_Name",length("S_Name") -4 ,4),'(,),{,},"','')as secondpart;
                regexp_split_to_table can be used to split the value into strings by the delimiter ;, then you can use split_part to get the first and second parts of the desired result.
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;
Data Output:
| first | second | 
|---|---|
| SUCCESS FACTORS | 25% | 
| SAP | 45% | 
| MICROSOFT | 30% | 
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With