首页 > 解决方案 > 如何将逗号拆分数据与 1 个字段分开并移至 SSMS 中的 2 个单独字段?

问题描述

我不需要创建 2 个新字段来移动数据。字段已创建。我只需要将逗号分隔的数据从 1 个字段移动到已创建的 2 个字段中

我有 1 列包含城市和州数据。我需要将数据从 1 列移到 2 列中——一个用于城市,一个用于州。

我需要从 Address1 中取出逗号分割的数据并放入 Address2 和 Address3 列。

Address1 (column)
Anywhere, USA

Address2 (column)  Address3 (column)
Anywhere            USA

标签: sql-servertsqlsplit

解决方案


您可以使用How to split a comma-separated value to columns中的解决方案来创建 UPDATE 语句:

CREATE TABLE #test (Address1 varchar(100),Address2 varchar(100),Address3 varchar(100))

INSERT INTO #test (Address1) VALUES ('Anywhere, USA')
INSERT INTO #test (Address1) VALUES ('Anywhere')

UPDATE #test set
Address2 = Substring(Address1 , 1,Charindex(',', Address1)-1),
Address3 = Substring(Address1 , Charindex(',', Address1 )+1, LEN(Address1))
WHERE Address1 LIKE '%,%'

SELECT * FROM #test
DROP TABLE #test

推荐阅读