我有一個包含任務級別爲子任務的典型分層數據的表。 PARENTID是根級的任務NULL:如何複製分層數據
CREATE TABLE [dbo].[tblTask](
[TaskID] [int] IDENTITY(1,1) NOT NULL,
[TaskDescription] [nvarchar](255) NOT NULL,
[TaskStatusID] [int] NOT NULL,
[ParentID] [int] NULL
)
在每個月初,我需要複製新的TaskID的對於未完成每個任務的層次結構(TaskStatusID == Complete),然後關閉所有原始任務。爲了節省自己的悲痛,我的第一個傾向將是在c#中解決這個問題,我比SQL有更高的精通度,但是我想首先試着瞭解是否有一種直接在數據庫中解決這個問題的好方法。
更新:@Abe我不確定你需要什麼樣的數據,特別是沒有所需的輸出。我需要複製表中的結構,但新的TaskID's。這是針對SQL Server的。
@thursdaysgeek假設如果父任務完成,則所有子任務也完成。規則是如果一個根任務的子任務全部完成,那麼我可以設置根任務完成。否則,如果一個父任務沒有完成,但子任務是,那麼我只需要複製父母而不是孩子。希望有所幫助。
你能給我們提供你的樣品數據和所需的輸出嗎?另外,這是什麼DBMS? – 2011-04-13 21:37:44
是否有可能有一個不完整的子任務和父任務是?如果是這樣,那麼兩者都需要重複?如果您有一個不完整的父任務和一個子任務,那麼只有父任務需要重複? – thursdaysgeek 2011-04-13 21:43:05
一個好的方法是用C#(或僞C#)寫出來並在這裏發佈結果。然後請求幫助將該算法轉換爲SQL。 – 2011-04-13 22:37:25