partition byを検討してください group byするフィールドと同様になります その後、パーティション値が変更されると、ウィンドウ関数は1から再開します
EDITasはa_horse_with_no_nameで示されます。この必要性のために、dense_rank()が必要です。 row_number()とは異なり rank() またはdense_rank() 割り当てた番号を繰り返します。 row_number() パーティション内の行ごとに異なる値である必要があります。 rank()の違い およびdense_rank() 後者は数字を「スキップ」しません。
クエリについては、次を試してください:
dense_rank() over (partition by Username, Game order by ct."date") as "Attempts"
ちなみに、同じフィールドでパーティションを作成したり、並べ替えたりすることはありません。それが必要な場合は、注文するだけで十分です。ここにはありません。