2013-05-02 37 views
0

我只想查找失敗的用戶詳細信息,但下面的查詢提供了重複的記錄。我無法找到合適的解決方案。如何僅在SSRS 2008 R2中查找失敗的用戶詳細信息?

要找到我使用下面的查詢失敗的作業細節:

select * from executionlog e 
join catalog c on e.reportid = c.itemid 
where c.name like '%reportname%' 
and timestart>= '2013-04-15 09:00:00.000' 
and status <> 'rsSuccess' 

然而,上面的查詢是給重複值的特定報告。

我如何獲得獨特的細節?

注:因爲表包含ntextimage數據類型

回答

2

如果你想只有「失敗的用戶詳細信息」,那麼不要選擇ntextimage列在所有的列,我們不能申請distinctgroup by。通過這種方式,您可以正常執行DISTINCT操作:

SELECT DISTINCT 
     --Parameters, 
     --Content, 
     --Property, 
     --Parameter, 
     InstanceName, ReportID, UserName, RequestType, Format, TimeStart, TimeEnd, 
     TimeDataRetrieval, TimeProcessing, TimeRendering, Source, Status, ByteCount, 
     [RowCount], ItemID, Path, Name, ParentID, Type, Intermediate, SnapshotDataID, 
     LinkSourceID, Description, Hidden, CreatedByID, CreationDate, ModifiedByID, 
     ModifiedDate, MimeType, SnapshotLimit, PolicyID, PolicyRoot, ExecutionFlag, 
     ExecutionTime 
FROM executionlog e 
JOIN catalog c ON e.reportid = c.itemid 
WHERE c.name LIKE '%reportname%' 
     AND timestart>= '2013-04-15 09:00:00.000' 
     AND status <> 'rsSuccess' 

您甚至可以修剪更多列。無論如何,在很多情況下請注意doing SELECT * is a bad practice

如果您對相應的ntext和/或image值感興趣,您可以隨時再次對上述子查詢加入catalog

+0

嗨,謝謝你的回覆,你不能申請不同的圖像和ntext數據類型。如果你保持狀態<>'rssucess',你會得到重複。因爲很多事情都是在rssucess以外的狀態下出現的,例如rsprocessingaborted,rsdenied,rsdatabaseservererror等等。所以我們應該得到相同參數的重複。 – Prasad 2013-05-05 06:33:16

+0

對不起,但您的評論對我來說絕對沒有意義(也許是語言障礙?)。 – Jeroen 2013-05-05 14:53:42

相關問題