私はSQL側が初めてです。この質問が非常に簡単に聞こえる場合は、私を惜しまないでください。SQLテーブルに4つの列があります.A、B、C、Dとしましょう。任意の BC の組み合わせについて、任意の数の行を取得できます。これらの選択された行について、最大 3 行を取得する必要があります (これにより、その BC 組み合わせに対して A の 3 つの一意の値が得られます)、上位 3 つの D の最大値が必要です。その BC 組み合わせの他のエントリと比較して.
したがって、BC の組み合わせはいくつあってもよいため、上記のロジックはそれらすべてを意味するはずです。