SQL附加字符串

时间:2017-04-15 15:49:54

标签: mysql sql

如何将字符串从另一个字符串中的特定位置插入到数据库中的列。我在表格中有一个名为Name的列.Name列有一个值Test.How要插入第二个postion的字符串名称从测试后来看。像最新的测试一样。

onRequestPermissionsResult()

1 个答案:

答案 0 :(得分:0)

对于SQL Server

 --Original String
 DECLARE @orgString varchar(50) = 'This is some test string'
 --Search String
 DECLARE @searchString varchar(50) = 'te'
 --String to insert into the original string
 DECLARE @insertString varchar(50) = 'NEW'

 SELECT 
 CONCAT(SUBSTRING(@orgString,1,CHARINDEX(@searchString,@orgString)+1),
            @insertString,
 SUBSTRING(@orgString,CHARINDEX(@searchString,@orgString)+2,LEN(@orgString))) 
 AS String

要对表中的数据运行类似的操作,请将原始字符串变量替换为列名

 --Search String
 DECLARE @searchString varchar(50) = 'te'
 --String to insert into the original string
 DECLARE @insertString varchar(50) = 'NEW'

 SELECT CONCAT(SUBSTRING(Name,1,CHARINDEX(@searchString,Name)+1),
            @insertString,
 SUBSTRING(Name,CHARINDEX(@searchString,Name)+2,LEN(Name))) 
 AS String
 FROM Table_1

如果总是位于第2和第3位之间,你可以稍微简化它。

 --String to insert into the original string
 DECLARE @insertString varchar(50) = 'NEW'

 SELECT CONCAT(SUBSTRING(Name,1,2),
               @insertString,
              SUBSTRING(Name,3,LEN(Name))) 
          AS String
 FROM Table_1

请查看此字符串函数引用,String Functions