已有表tt1,表中資料為:
tt1913214718202
747122981926
406016403234
476939375473
256025427480
189140511709
643936412265
509032309425
987106029772
718506902948
表tt2,結構為:
id1 varchar(10)
id2 varchar(10)
現要將表tt1中欄位tt1的值依次放到表tt2的id1和id2中。
id1 id2
9132147182 7471229819
4060164032 4769393754
2560254274 1891405117
6439364122 5090323094
9871060297 7185069029
以下的實現方法(我是用游標來實現的,如果還有其他更好的方法可以回帖相告^_^):
declare @tt1 as varchar(10),@m as int,@str as varchar(2000)
set @m = 0
declare cur_item cursor for
select cast(tt1 as varchar) from tt1
open cur_item
fetch next from cur_item into @tt1
while @@fetch_status = 0
begin
if (@m = 0)
begin
set @str = 'insert into tt2(id1,id2) values('''+@tt1+''','
endif (@m = 1)
begin
set @str = @str + ''''+@tt1+''')'
endset @m = @m + 1
if (@m = 2)
begin
exec (@str)
set @m = 0
endfetch next from cur_item into @tt1
endclose cur_item
deallocate cur_item
dataframe一列拆分成多列 split
假設某一列資料報含多個資訊或乙個字串 id attrs a 1,2,5,3 b 3,1,2,5 c 1,2,0,3 d 1,7,5,3 e 2,1,6,8 我們想把他拆分成多列,做法如下 首先進行拆分 data df data df attrs str.split expand true 然後用pd...
將一列包含多個ID拆分多行
原文 將一列包含多個id拆分多行 看到個不常見的問題 然後在 inner sql server2008 裡面找到乙個思路。如果下面的表結構,如何拆分多行並對應員工號呢?首先建立測試表 create table department id intidentity 1,1 primary key,dep...
用SQL進行多值列拆分成二值列的乙個實現
在進行資料分析的時候,往往需要把資料 中的多值列拆分成二值列。如圖1中的表a所示,fruits為乙個多值列,值可以是不同的水果名字,表明某個以id作為標識的人吃水果的記錄。現在的需求是要把是否吃了什麼具體水果拆成多個列,最終如表b所示。在這個例子中,吃水果的記錄還有重複,所以需要把重複的記錄去掉。具...