0
我試着去生成一個SQL以下輸出2008查詢 -SQL SELECT
JobID | Repair & Reshape | Refit Stripped Parts | Polishing
1000 | true | true | false
1001 | true | true | false
1002 | true | true | false
1003 | true | true | false
1004 | true | true | false
表結構我是 -
JobDetails
ID - PK Auto increment
JobID - Int (Joined to Jobs table)
PhaseID - String (joined to JobPhases table)
JobPhases
ID - PK String
Name - VarChar(150)
因此f AR,我有 -
SELECT JobID, [0], [1], [2], [3], [4], [5], [6], [7]
FROM
(
SELECT JobID, PhaseID, [x] = 1 FROM JobDetails
) JobDetails
PIVOT
( SUM(x)
FOR PhaseID IN ([0], [1], [2], [3], [4], [5], [6], [7])
) pvt
但不知道我要如何用作業階段名稱替換0-7等?
乾杯
這是有效的,但是有沒有辦法避免手動輸入階段名稱,但在JobPhases表的基於選擇的語句中執行?歡呼 – dynamicuser
是的,在這種情況下,您必須使用動態SQL動態執行此操作,例如,請參閱[**此帖子**](http://stackoverflow.com/a/16589658/722783)。 –