の最後の取引(当日または前日)からの1日の終わりの利益の合計を見つけましたa question in Aprilと@Mikaelが私にそれを解決するのを助けてくれました。それ以来、要件が変更されており、クエリの作成方法を把握することができません。 テーブル構造がT-SQL
SID Sdate Profit Units 1 7/26/2010 9:15:00 AM -37.5 -1 1 7/26/2010 12:00:00 PM -125 -1 1 7/26/2010 12:45:01 PM -12.5 -1 1 7/26/2010 12:45:02 PM 0 0 1 7/26/2010 12:45:03 PM -75 1 1 7/26/2010 2:00:01 PM -12.5 1 1 7/26/2010 2:00:02 PM 0 0 1 7/26/2010 2:00:03 PM -125 -1 1 7/26/2010 2:15:00 PM -50 -1 1 7/27/2010 9:15:00 AM 25 -1 1 7/27/2010 12:00:00 PM 196 -1 1 7/27/2010 2:15:00 PM -12.5 -1 1 7/28/2010 9:15:00 AM 425 -1 1 7/28/2010 12:00:00 PM -125 -1 1 7/28/2010 2:15:00 PM -12.5 -1 1 7/29/2010 9:15:00 AM -37.5 -1 1 7/29/2010 12:00:00 PM -90 -1 1 7/29/2010 12:45:01 PM -12.5 -1 1 7/29/2010 12:45:02 PM 0 0 1 7/29/2010 12:45:03 PM -75 1 1 7/29/2010 2:15:00 PM 23 1
計算は次のように説明されている。結果は純利益の列の合計は、のために毎日の14:15で取られ
SID Sdate Profit Units 1 7/26/2010 -175 -1 1 7/27/2010 33.5 -1 1 7/28/2010 321 -1 1 7/29/2010 -52 1
だろう
SID Sdate Profit Units End-of-day-Profit Comments 1 7/26/2010 9:15:00 AM -37.5 -1 1 7/26/2010 12:00:00 PM -125 -1 1 7/26/2010 12:45:01 PM -12.5 -1 1 7/26/2010 12:45:02 PM 0 0 1 7/26/2010 12:45:03 PM -75 1 1 7/26/2010 2:00:01 PM -12.5 1 1 7/26/2010 2:00:02 PM 0 0 1 7/26/2010 2:00:03 PM -125 -1 1 7/26/2010 2:15:00 PM -50 -1 -175 SUM of profit(row 9 to row 11) going back to 7/26/2010 2:00:02 PM 1 7/27/2010 9:15:00 AM 25 -1 1 7/27/2010 12:00:00 PM 196 -1 1 7/27/2010 2:15:00 PM -12.5 -1 33.5 SUM of profit (row 9 to row 14) going back to 7/26/2010 2:00:02 PM 1 7/28/2010 9:15:00 AM 425 -1 1 7/28/2010 12:00:00 PM -125 -1 1 7/28/2010 2:15:00 PM -12.5 -1 321 SUM of profit(row9 to row 17) going back to 7/26/2010 2:00:02 PM 1 7/29/2010 9:15:00 AM -37.5 -1 1 7/29/2010 12:00:00 PM -90 -1 1 7/29/2010 12:45:01 PM -12.5 -1 1 7/29/2010 12:45:02 PM 0 0 1 7/29/2010 12:45:03 PM -75 1 1 7/29/2010 2:15:00 PM 23 1 -52 SUM of profit(row 22 to row 23) going back to 7/29/2010 12:45:02 PM
すべてのSID。単純化のために1つのSIDを含めました。考えは、利益= 0と単位= 0を持つ行の現在の日または前日のいずれかを振り返ることです。その行が見つかると、すべての利益値を合計します。
このたびは、ありがとうございます。ありがとうございます。
'純利益の列の合計は2で取られています。毎日15PM - どのように?つまり、手作業で行ったり、エージェントの仕事をしたりしていますか?あなたの例では毎日午後2時15分に行があり、これには利益値も含まれています。そのような行がない場合はどうなりますか?別の終末利益値を追加するために、午後2時15分の時間と利益0を挿入するか、またはスクリプトが最新の行を利益で検索し、そこには利益がありますか? –
Sdateは一意の制約を持つ列ですか?データはどのように挿入されますか?最初にSdate M/dd/yyyy 2:15:00 PMのレコードを挿入してから、終値利益を計算しますか? – boes
@Frans、sdateは一意の制約を持つ列ではありません。 m/dd/yyyy 2:15 PMで示される終了日レコードは、これらのレコードを生成するプロセスが実行されるときにテーブルに格納されます。 – ARK