sybaseを使用しています。
時間と数量という名前の列を持つテーブルがあります。数量は、ゼロまたはゼロ以外のいずれかになります。1秒以内の後続の数量が>0で、元の数量が40より大きい場合をすべて見つける必要があります。
この問題はSQL構造の観点からは考えられませんが、C ++コードであれば、forループなどを使用して簡単に実行できたはずです。
これを例を挙げて説明してみましょう。
昇順でデータを収集した添付画像から:
10.01.01.000>40および10.01.01.001>0の数量なので、ショートリストに10.01.01.000を含めます。
数量>0の場合でも、1秒以内の次の数量(10.01.01.002)は0であるため、ショートリストに10.01.01.001は含まれません。
行4は、1秒以内でも次の行があるため、サンプルには含まれていません。
RowNumber時間数量 1 10:01:01.000 100 2 10:01.01.001 50 3 10:01:01.002 0 4 10:01.01.003 100 5 10:01:03.001 100