[SQL ] 分割資料表並存成新表?

看板Database作者 (大衛)時間12年前 (2014/02/21 15:48), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
我有一個資料庫data 裡面有一資料表total 包含2007年1/2、1/3、1/4的每天資料 型式長這樣 Date 資料行1.......資料行n 20070102 aa . 20070102 bb . . . . . 20070103 cc . . . . . 20070104 dd . 現在想把每天資料切開為各自獨立的表並存成新表 也就是 dbo.total -> dbo.20070102 dbo.20070103 dbo.20070104 目前想到的方法就是從 total 裡 select 出每天資料再 into 新表 但想寫個迴圈來讓他自己跑 而不用手動去更改數字來執行 以下是我嘗試寫的迴圈 declare @i int , @n varchar(100) set @i=2; while @i<=4 begin select * from [Data].[dbo].[total] where RIGHT(DspDate,1)=@i select @n='insert into [Data].[dbo].2007010'+convert(varchar,@i) execute(@n) set @i=@i+1; end 但是執行後卻說語法不正確 請問應該怎麼修改才對呢? 或是有其他更好的方法?? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.247.55

02/21 19:37, , 1F
寫view group by date 不建議把table拆開存
02/21 19:37, 1F
感謝 我有試了view的方法 但我資料欄位蠻多的(之前沒打完整) 且我之後須依日期做變數計算 所以勢必分日期各自存表(因為資料庫太大會跑很久) 不知道還有其他建議方法嗎? 謝謝 ※ 編輯: david1985 來自: 140.117.247.60 (02/21 20:48)
文章代碼(AID): #1J1mJazv (Database)