2016-08-29 3 views
0

SSRSとデータベースクエリを使用して私たちのシステムのパフォーマンストラッカーを作成しました。それで今はカードと処理時間を合計し、SSRSは1日にProcessingDateを使ってそれをグラフ化します。データベースは、DataBatchIDに基づいてデータベースに新しい行を追加します。ただし、すべてのカードを追加して1日の処理時間を追加するこの方法では、スレッドが同時に実行されている状況を正しく考慮していません。したがってSSRSを使用すると、ProcessingDateがまったく同じである場合、NumCardsPassedを合計してProcessingTimeの平均を取って、その日の残りの時間に加算するだけでよいのかどうかを判断する方法があります。私はそれをうまく説明していない場合は申し訳ありません。以下は、クエリから返されたデータセットの例です.10:24に入ったすべてのデータに対して、numCardsPassedを加算してProcessingTimeを平均し、10:25に同じようにします。その後、8/26の日にすべての値をグラフ化してください。グラフを描くと、すべてが一度に1つずつ順番に実行されているように見えますが、時には一緒に実行されていないことがあります。他のフィールドのSSRSテイク平均IF値は同じです

ProcessingDate DataBatchId NumCardsPassed ProcessingTime 
8/26/2016 7:39 10112  99314    485 
8/26/2016 8:51 10113  4971    29 
8/26/2016 9:14 10114  4971    34 
8/26/2016 10:20 10115  4957    38 
8/26/2016 10:23 10116  4961    104 
8/26/2016 10:24 10117  4979    144 
8/26/2016 10:24 10119  4979    182 
8/26/2016 10:24 10118  4982    161 
8/26/2016 10:24 10120  4987    219 
8/26/2016 10:24 10122  4982    243 
8/26/2016 10:24 10121  4981    236 
8/26/2016 10:24 10125  4949    262 
8/26/2016 10:24 1
8/26/2016 10:24 10127  4973    278 
8/26/2016 10:24 10124  4975    241 
8/26/2016 10:24 10128  4981    279 
8/26/2016 10:25 10129  4976    280 
8/26/2016 10:25 10126  4972    258 
8/26/2016 10:25 10130  4979    277 
8/26/2016 10:25 10132  4976    288 
8/26/2016 10:25 10131  4972    277 
8/26/2016 10:25 10133  4841    288 

答えて

0

あなたのクエリであることを行うことができます。日付は、実際にミリ秒に正確な日付で、若干の差異がミリ秒であるならば、あなたはいくつかの丸めを行うために必要があること

SELECT ProcessingDate, SUM(NumCardsPassed) AS NumCardsPassed, AVG(ProcessingTime) AS ProcessingTime 
FROM ProcessTable 
GROUP BY ProcessingDate 
ORDER BY ProcessingDate 

注意をか日付フィールドの変換を適切に分単位でグループ化します。

あなたは、次のSQLを使用した分に日付を丸めることができます一つのことを除いて動作します

this answerから)のMySQL

SELECT SEC_TO_TIME((TIME_TO_SEC(ProcessingDate) DIV 60) * 60) AS TimeInMinutes 

SQL Serverの

SELECT DateAdd(mi, DateDiff(mi, 0, ProcessingDate), 0) AS TimeInMinutes 
+0

。 processingDateはミリ秒(00:00:00.000)になります。この精度は非常に正確で、ミリ秒まで正確に同じ値がグループ化されています。分単位でグループ化する方法はありますか?私はProcessingDate列の変換を使用しようとしましたが、それをやっていません。 – Saif

+0

丸めSQLを追加しました。 –

関連する問題