「資料清理」修訂間的差異
跳至導覽
跳至搜尋
(新頁面: ==用途== * 將跨Table或是樹狀或網狀Table的資料,根據資料的特性,清理成一個或數個,簡化過的Table。這樣在使用時(如List列表)的效能會快...) |
小 (→作法) |
||
行 8: | 行 8: | ||
[ID] [varchar](12) , | [ID] [varchar](12) , | ||
[col2] [varchar](12) , | [col2] [varchar](12) , | ||
− | [col3] [int] | + | [col3] [int] NULL, |
− | [col4] [int] | + | [col4] [int] NULL |
) ON [PRIMARY]; | ) ON [PRIMARY]; | ||
</source> | </source> |
於 2008年6月17日 (二) 15:35 的修訂
用途
- 將跨Table或是樹狀或網狀Table的資料,根據資料的特性,清理成一個或數個,簡化過的Table。這樣在使用時(如List列表)的效能會快很多。
作法
1.先建立【目標的Table】
CREATE TABLE [dbo].[Table1]( [ID] [varchar](12) , [col2] [varchar](12) , [col3] [int] NULL, [col4] [int] NULL ) ON [PRIMARY];
2.先Select出必要的PK與FK欄位Insert到【目標的Table】
INSERT INTO Table1 (ID, col2) SELECT (ID, col2) from Table2;
3.依序以Update方式,將整理好的資料Update到【目標的Table】
update Table1 set col3=sum(b.SubTotal) from Table1 as a, Table3 as b where a.ID=b.ID; update Table1 set col4=max(b.SubTotal) from Table1 as a, Table3 as b where a.ID=b.ID;