需要通过身份证号联表查询比对,可是房产登记的身份证可能不止一个,查询的时候只能比对一个身份证号的
所以需要 根据某分隔符将一条记录拆分为多行记录
从网上找到一个例子
create table tb(id int,value varchar(30))
insert into tb values(1,'aa,bb')
insert into tb values(2,'aaa,bbb,ccc')
go
SELECT *FROM tb
SELECT A.id, B.value
FROM(
SELECT id, [value] = CONVERT(xml,'<root><v>' + REPLACE([value], ',', '</v><v>') + '</v></root>') FROM tb
)A
OUTER APPLY(
SELECT value = N.v.value('.', 'varchar(100)') FROM A.[value].nodes('/root/v') N(v)
)B
DROP TABLE tb