码迷,mamicode.com
首页 > 其他好文 > 详细

Excel列值(不限字符串数字)转换Vaules()拼凑表

时间:2017-07-11 00:59:40      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:get   arc   row   join   max   har   cross   数字   des   

DECLARE @TaskCmdOne VARCHAR(MAX)=‘北京  
上海  
广州  
长春  
济南  
成都  
南京  
武汉‘, @TaskCmdTwo VARCHAR(MAX)  
  
  
SELECT @TaskCmdOne=REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@TaskCmdOne,‘,‘,‘,‘),‘、‘,‘,‘),‘/‘,‘,‘),‘\‘,‘,‘),‘|‘,‘,‘)  
  
IF CHARINDEX(‘,‘,@TaskCmdOne)=0   
BEGIN  
  SELECT @TaskCmdOne=REPLACE(@TaskCmdOne,CHAR(13)+CHAR(10),‘,‘)  
  WHILE LEFT(@TaskCmdOne,1)=‘,‘ SELECT @TaskCmdOne=RIGHT(@TaskCmdOne,LEN(@TaskCmdOne)-1)  
  WHILE RIGHT(@TaskCmdOne,1)=‘,‘ SELECT @TaskCmdOne=LEFT(@TaskCmdOne,LEN(@TaskCmdOne)-1)  
END ELSE  
BEGIN  
    SELECT @TaskCmdOne=REPLACE(@TaskCmdOne,CHAR(13)+CHAR(10),‘<br>‘)   
    SELECT @TaskCmdOne=REPLACE(@TaskCmdOne,‘<br>‘,‘‘)  
END  
  
SELECT @TaskCmdOne=REPLACE(@TaskCmdOne,‘ ‘,‘‘)  
SELECT @TaskCmdTwo=REPLACE(@TaskCmdOne,‘,‘,‘‘‘)‘+‘,‘+‘(‘‘‘)  
SELECT @TaskCmdOne=REPLACE(@TaskCmdOne,‘,‘,‘‘‘‘+‘,‘+‘‘‘‘)  
  
SELECT @TaskCmdOne=‘‘‘‘+@TaskCmdOne+‘‘‘‘  
SELECT @TaskCmdTwo=‘(‘‘‘+@TaskCmdTwo+‘‘‘)‘  
SELECT @TaskCmdOne=REPLACE(@TaskCmdOne,‘ ‘,‘‘)  
SELECT @TaskCmdTwo=REPLACE(@TaskCmdTwo,‘ ‘,‘‘)  
  
DECLARE @xml XML,@xmltwo XML  
SELECT @xml=CAST(‘<x>‘+REPLACE(@TaskCmdOne,‘,‘,‘,</x><x>‘)+‘</x>‘ AS XML)   
SELECT @xmltwo=CAST(‘<x>‘+REPLACE(@TaskCmdTwo,‘,‘,‘,</x><x>‘)+‘</x>‘ AS XML)   
  
SELECT A.RowID,A.col1,B.col2 FROM (  
SELECT ROW_NUMBER() OVER(ORDER BY GETDATE()) RowID,T.C.value(‘.‘,‘varchar(500)‘) AS col1  from    
(SELECT @xml.query(‘.‘) AS name) AS a  
CROSS APPLY a.name.nodes(‘/x‘) T(C))A INNER JOIN (  
SELECT ROW_NUMBER() OVER(ORDER BY GETDATE()) RowID,T.C.value(‘.‘,‘varchar(500)‘) AS col2  from    
(SELECT @xmltwo.query(‘.‘) AS name) AS a  
CROSS APPLY a.name.nodes(‘/x‘) T(C))B ON A.RowID=B.RowID  

  

Excel列值(不限字符串数字)转换Vaules()拼凑表

标签:get   arc   row   join   max   har   cross   数字   des   

原文地址:http://www.cnblogs.com/binguo2008/p/7148225.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!