ホームページ  >  に質問  >  本文

2 つの別々のテーブルから売上データを集計する際の MySQL の問題

今後ともよろしくお願いいたします。 SQL を学習し、使用するデータを生成していますが、1 つの単純なことで行き詰まっています。以下のスクリーンショットの表は、2020 年に各従業員が達​​成した売上高と地域および日付の情報を示す sales20 テーブルの一部を示しています。

テーブル セールス 20

2021年から同じテーブルを持っています。私がやりたいのは、従業員の名前、地域、従業員が 2020 年と 2021 年に達成した総売上高を提供したいということです。次のクエリを作成しましたが、正しい数値が得られません。それはそれに値する以上のものをもたらします。 重要な点は、2020年と2021年の従業員は異なるということです。たとえば、2021 年に新しい従業員がいるということは、その従業員もリストに掲載される必要がありますが、その従業員の 2020 年の列は空である必要があります。

私の質問:

リーリー

結果の一部のスクリーンショット:

###結果:###

私の何が間違っているのか教えていただけますか?

P粉391677921P粉391677921178日前355

全員に返信(2)返信します

  • P粉476475551

    P粉4764755512024-04-05 11:55:05

    2 つのテーブルをマージする必要があるときは、テーブルを結合することになります -

    リーリー

    返事
    0
  • P粉138871485

    P粉1388714852024-04-05 00:24:31

    リーリー

    1 対 1 結合するには、個人と地域に基づいて 2 つのテーブルを結合する必要があります。従業員のみに基づいて結合すると、1 対多の結合が行われるため、出力が破損します。

    別のアプローチは、2 つのテーブルのデータをマージし、これに基づいて集計を実行することです。これにより、正確な結果が得られるはずです。

    リーリー

    返事
    0
  • キャンセル返事