-1
排序分級表我正陷在使用公共表expression.Please看到我的樣品 我有一個表稱爲COMMON.TASK_REL使用公共表表達式
排序分級表我的第二張表叫做常見。任務
我的SQL查詢
WITH ctLevel
AS
(
SELECT
C_TASK_ID AS Child
,P_Task_ID AS Parent
,common_task. TASK_SEQ AS taskSeq
,1 AS [Level]
,CAST(C_TASK_ID AS VARCHAR(MAX)) AS [Order]
,CAST (Replicate(' ', 1) + common_task.TASK_NAME AS VARCHAR(MAX)) AS [Task_Name]
FROM
[COMMON.TASK_REL] as common_task_rel,
[COMMON.TASK] as common_task
WHERE
common_task_rel.C_TASK_ID = common_task.TASK_ID
and common_task.[TASK_TYPE] = 'B' AND common_task.[MODULE_CODE] = 'LWRPT' AND common_task.[STATUS] <> 'D'
and common_task_rel.P_TASK_ID is null
UNION ALL
SELECT
C_TASK_ID AS Child
,P_Task_ID AS Parent
,common_task. TASK_SEQ AS taskSeq
,[Level] + 1 AS [Level]
,[Order] + '.' + CAST(C_TASK_ID AS VARCHAR(MAX)) AS [Order]
,CAST (Replicate(' ', [Level] + 1) + common_task.TASK_NAME AS VARCHAR(MAX)) AS [Task_Name]
FROM
[COMMON.TASK_REL]as common_task_rel
INNER JOIN
ctLevel
ON
(P_Task_ID = Child) ,
[COMMON.TASK] as common_task
WHERE
common_task_rel.C_TASK_ID = common_task.TASK_ID
and common_task.[TASK_TYPE] = 'B' AND common_task.[MODULE_CODE] = 'LWRPT' AND common_task.[STATUS] <> 'D'
)
SELECT [Parent] ,[Child],taskSeq, Level,[Order],[Task_Name]as taskName
FROM ctLevel
order by [Order]
我的SQL結果
在這裏,我有一個問題。我該如何排序的taskseq成爲結果類似下面
taskName taskSeq
-Item1 1
--Item 1.1 1
--Item 1.2 2
--Item 1.3 3
-item 3 2
-Item 2 3
--Item 2.1 1
--Item 2.2 2
--Item 2.3
---Item 2.3.1
請幫助。十分緊急。在此先感謝
爲什麼你不只是一個靜態的'Sort'列,並用它爲您的自定義排序? – 2012-03-19 08:49:00