原数据表的数据格式如下 要求将字段vernacular中用逗号”,”分隔的字符串单独取出,并且把相应行的spnumber也取出,最后形成一条新的记录。
要求的结果如下
实现的SQL语句如下
–拆分字段字符串形成新的记录
CREATE TABLE tb
(
spnumber INT,
vernacular VARCHAR(1000)
)
INSERT INTO tb
SELECT SPNUMBER,
COMNAME
FROM dbo.CommonName
DECLARE @i INT
SELECT @i = MAX(LEN(vernacular))
FROM tb
SET ROWCOUNT @i
SELECT spnumber = IDENTITY( INT)
INTO #t
FROM syscolumns a,
syscolumns b
SET ROWCOUNT 0
SELECT a.spnumber,
数据表的结构和需要的结果 表中的VernacularAll字段包括中文和字符组合的字符串,需要得到的结果是将两者拆分到不同的字段Vernacular和Page。
SQL语句如下
–将字段VernacularAll左边的中文字符串取出
UPDATE dbo.FRPSNames
SET Vernacular = LEFT(VernacularAll,
PATINDEX(’%[1-9]%’, VernacularAll) - 1)
–将字段VernacularAll右边的数字字符串取出
UPDATE dbo.FRPSNames
SET Page = RIGHT(VernacularAll,
LEN(VernacularAll) - PATINDEX(’%[1-9]%’, VernacularAll)
+ 1) .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, “Courier New”, courier, monospace; background-color: #ffffff; /white-space: pre;/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .