oracle 将值转换为转换值的SQL语法

sbtkgmzw  于 2023-10-16  发布在  Oracle
关注(0)|答案(1)|浏览(92)

列值为-AE、IN、US、Au
我希望将此值取为-AE、-IN、-US、-Au
请帮助在SQL中实现这一点

ruarlubt

ruarlubt1#

我不知道字符串中是否有首字母“-”,所以我得到了两种字符串模式的答案。
使用Replace功能。REPLACE不使用通配符,它只是将第一个字符串的所有示例替换为第二个字符串,即Replace(ColumnNameOrFixedString,'oldstring',' newstring')
我给出了基于Sqlserver的创建表的语法,但替换函数在Oracle中的工作也是一样的
参考:How to replace a string in a SQL Server Table Column

Declare @table1 table (col1 varchar(500))

Insert into @table1 values ('-AE,IN,US,AU'), ('AE,IN,US,AU')

select Replace(col1,',',',-') ReplaceValue1, Replace('-'+col1,',',',-') ReplaceValue2 from @table1

输出

相关问题