前些日子有处理过一些XML的数据,有一种XML拆分数组的方法,这两天大量用到。就记录一下。
--例子是分折一个ip地址,得到每一段的值,当然也可以是其它类数据的数据或列:a-b-c-d或者3,4,5,6之类的 declare @ip varchar(15); set @ip='192.168.1.123' --把字串转成XML declare @ipx xml; set @ipx=CONVERT(xml,''+REPLACE(@ip,'.','')+'') --得到4行数据 select @ipx select T.c.query('data(.)') as r from @ipx.nodes('/x') T(c)