SQL删除末尾的文本并添加前缀

时间:2013-03-30 01:43:24

标签: sql join replace case prefix

我是SQL的新手,还不了解很多关键字。

我有一个案例来生成一个文本,其中我在下面的示例中提取数据

我提取的数据是10DAYS, 20DAYS, 30DAYS,依此类推......

现在,我想删除最后的DAYS,并在开头添加前缀D,从而生成数据:

D10, D20, D30...  

我使用的是Replace关键字,但我仍然无法使其正常工作,呵呵

提前致谢!

2 个答案:

答案 0 :(得分:0)

这会使用REPLACE从您的字段中删除单词DAYS:

SELECT 'D' + REPLACE(yourfield, 'DAYS', '') 
FROM YourTable

SQL Fiddle Demo

根据您的RDBMS,您可能需要以不同方式连接您的值。例如,对MySql使用CONCAT,为Oracle使用||

答案 1 :(得分:0)

不使用替换:

declare @str nvarchar(50)

set @str = '10days'

declare @index int

set @index = PATINDEX( '%days', @str )

set @str = 'D' + STUFF( @str, @index, 4, '' )

select @str