1
對於獲得Dataset2我使用下面的CTE
;WITH RecordsWithNoDuplicates_CTE (RowNo,[Name]
,[DateAdded]
,Reason
) AS
(
SELECT ROW_NUMBER() OVER (PARTITION BY name Order by DateAdded DESC) AS 'RowNo'
,Name,
DateAdded,
Reason
FROM
MyTable
)
SELECT * FROM RecordsWithNoDuplicates_CTE where rowno=1
爲了得到Dataset3我做了以下
;WITH RecordsWithSpecificCase_CTE (RowNo,[Name]
,[DateAdded]
,Reason
) AS
(
SELECT ROW_NUMBER() OVER (PARTITION BY name Order by DateAdded DESC) AS 'RowNo'
,Name,
DateAdded,
Reason
FROM
MyTable
WHERE REASON='Case1'
)
SELECT * FROM RecordsWithSpecificCase_CTE where rowno=1
我需要計算的記錄,具體到一個理性的百分比= Case1中數據集2中的所有記錄
從數據集2和3的查詢開始,向它們添加COUNT。然後,使用'LEFT OUTER JOIN'結合新查詢,以便在「2」查詢中爲每行獲取輸出行,而不管「3」查詢中是否有任何匹配。然後根據需要快速的「COALESCE」填充「3」計數的零點,乘以100再除以「2」計數。 – HABO 2012-02-23 17:45:29
謝謝。會嘗試 .. – 2012-02-23 20:41:38