1
私はUnion Allを使用してクエリを実行しています。重複する行が結果クエリに追加されていることを確認します。 Union Allを使用すると、重複行が正しく追加されません。 Googleでは、「重複したSQLのユニオン」を検索すると、「連合は重複を取り除きます。ユニオンはそうではありません。クエリーの最初の部分に重複はありません。 UNIONを理解しているので、すでに存在する結果セットの行には追加されませんが、最初のデータセットにすでに存在する重複は削除されません。私の場合は、すでに入っている結果セットの行を追加する必要があります。どうすればいい?ここでSQL - Union Allを使用して重複を追加する
は私のクエリは次のとおりです。すべての助けを事前に
SELECT player_name_fkey, school_name_fkey, score_simple, sum(score_simple) over (partition by player_name_fkey) as sum_scores
FROM (
SELECT player_name_fkey, school_name_fkey, SUM(score) as score_simple
FROM simple LEFT JOIN players on players.name=simple.player_name_fkey
WHERE category='Cadet' AND gender='Féminin' GROUP BY player_name_fkey, school_name_fkey
UNION ALL
SELECT player_name_fkey, school_name_fkey, SUM(score) as score_simple
FROM double LEFT JOIN players on players.name=double.player_name_fkey
WHERE category='Cadet' AND gender='Féminin' GROUP BY player_name_fkey, school_name_fkey) t1
GROUP BY player_name_fkey, school_name_fkey, score_simple
ありがとう!
最後にGROUP BY句を削除してみます。 –
魅力的な作品です、ありがとうございます! –