2017-06-30 6 views
0

私は、レイアウトのためのいくつかの列(添付参照)を含むテーブルを持っています。何を私がしたいことは、これまではECL量と(同じ合計を持っていた)他の記録を保持し、最高「TOTAL」がされて今ケースと同じフィールドの場合

あなたは、レコード1と3は同じ「閉じECL」を持って見ることができるように... 「ECLを閉じる」は0に更新されます。

どうすればよいですか?非常に混乱.. enter image description here

シナリオ: enter image description here

+0

サンプル出力 – mohan111

+0

あなたの質問には、テーブル構造とデータをテキストとして追加してください。画像ではありません。また、何か試したことがある場合は、クエリを追加してください。予想される出力も –

+0

@ mohan111のシナリオは投稿 – Laura

答えて

0

あなたはupdateでこれを行うことができます。

update t 
    set closingECL = 0 
    where total < (select max(t2.total) 
        from t t2 
        where t2.primary_elf_id = t.primary_elf_id and 
         t2.closingECL = t.closingECL 
       ); 

これは、ロジックがprimary_elf_idごとに適用されていることを前提としています。

注:最大totalが複製されている場合、最大値はすべて残ります。

+0

が含まれています。これは自分自身に加わり、合計が高いかどうかを確認し、最低値を0に設定します。 @Laura。 – Laura

+0

。 。それは、それが何をしているかについてのかなり良い説明です。 –

関連する問題