sqlserver数据,将一行某一列字符串的值用“_”分割分别填充到这一行的其他列


分割字符到列
DECLARE @a VARCHAR(10)
SET @a ='00G-2-1102'
SELECT CHARINDEX('-',@a,CHARINDEX('-',@a))
SELECT CHARINDEX('-',@a,CHARINDEX('-',@a)+1)

SELECT SUBSTRING(@a,CHARINDEX('-',@a)+1,(CHARINDEX('-',@a,CHARINDEX('-',@a)+1) - CHARINDEX('-',@a,CHARINDEX('-',@a)))-1)

SELECT SUBSTRING(@a,CHARINDEX('-',@a,CHARINDEX('-',@a)+1)+1,LEN(@a)-CHARINDEX('-',@a,CHARINDEX('-',@a)+1))

//数据库的值

//building  某一列字符串 =00G-2-1102

UPDATE TABLE SET voice=SUBSTRING(building,CHARINDEX('-',building)+1,(CHARINDEX('-',building,CHARINDEX('-',building)+1) - CHARINDEX('-',building,CHARINDEX('-',building)))-1),
check_house=SUBSTRING(building,CHARINDEX('-',building,CHARINDEX('-',building)+1)+1,LEN(building)-CHARINDEX('-',building,CHARINDEX('-',building)+1))

猜你喜欢

转载自www.cnblogs.com/llsade/p/11841285.html