0
反饋表是這樣的加入與CommonTable表達 - SQL
URL DeveloperStatus ReviewerStatus
---------------------------------------------------------
default.aspx Open Closed
default.aspx Open Open
Pages.aspx Closed Open
Pages.aspx Open Closed
Pages.aspx Closed Closed
的每個網址都可以多次列出其DStatus & RSTATUS可以開啓/關閉無關的對方的身份
我會想要列出的總結是這樣的:
URL DeveloperStatus ReviewerStatus
---------------------------------------------------------
default.aspx Open Open
Pages.aspx Open Open
如果網址中有ATLEAST一個DeveloperStatus爲打開,那麼它應該是開放的。 ReveiwerStatus也一樣。
這是我的工作代碼。我該如何改進:
;WITH TBL1 AS
(
SELECT URL, DeveloperStatus,
ROW_NUMBER() OVER (PARTITION BY URL ORDER BY DeveloperStatus DESC) AS rn
FROM Feedback
)
,TBL2 AS
(
SELECT URL, ReviewerStatus,
ROW_NUMBER() OVER (PARTITION BY URL ORDER BY ReviewerStatus DESC) AS rn
FROM Feedback
)
SELECT DISTINCT f.URL,TBL1.DeveloperStatus,TBL2.ReviewerStatus FROM Feedback f
LEFT JOIN TBL1 ON f.URL = TBL1.URL AND TBL1.rn=1
LEFT JOIN TBL2 ON f.URL = TBL2.URL AND TBL2.rn=1