我想在一个select语句中替换两个东西。现在我可以一次替换一个角色。但是根据我的要求,我需要在一个语句中替换两个东西。我想用零替换一个特殊字符,另一个是将这些数据存储在多行中。我想在一行中获取这些数据。
select replace(message,chr(ACII_Value),0)
from my_table -- I can replace special character by zero using this.
select (message,chr(10),' ')
from my_table -- I can put all data in single line using this.
现在我想在一个select语句中执行此操作。
答案 0 :(得分:6)
select replace( replace( message, chr(ACII_Value), 0), chr(10), ' ')
from my_table;
答案 1 :(得分:1)
另一种选择是TRANSLATE功能:
select translate(message, chr(ASCII_Value)||chr(10), '0 ') from my_table;
虽然如果你只更换两个字符,我会选择@ schurik的答案,因为它使用了一个更简单,更常见的功能。