所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

sql怎么将数据表中的一列按照值拆分为多列?

发布时间:2020-04-12 01:27:28

资讯分类:数据表  sql  一列  分为  影响  数据库  selectcol1
sql怎么将数据表中的一列按照值拆分为多列?

什么数据库?

createtable#(col1int,col2varchar(64))

go

insertinto#select1,'a`b`c`'

insertinto#select2,'d`e`f`'+char(13)+'g`h`l`'

insertinto#select3,'d`e`f`'+char(13)+'g`h`l`'+char(13)+'g`l`'

go

withcte1as(

selectcol1,tmpfrom

(

selectcol1,xmlns=cast(''asxml)

from#)p

crossapply

(

selecttmp=c.v.value('.','nvarchar(100)')

fromp.xmlns.nodes('/root/p')asc(v)

)s

)

selectcol1,

col2=left(tmp,1),

col3=left(stuff(tmp,1,2,''),1),

col4=left(stuff(tmp,1,4,''),1)

fromcte1

---------结果

col1col2col3col4

-----------------------

1abc

2def

2ghl

3def

3ghl

3gl

(6行受影响)

留言与评论(共有 0 条评论)
   
验证码:
Top