• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:重複データを省いて集計する方法について)

重複データを省いて集計する方法を考える

このQ&Aのポイント
  • 重複データを省いて集計する方法を考えていますが、実現できていません。PostgreSQL8.3を使用しています。テーブルAのID単位で人数を集計し、ファイル名が同じ場合は1つとして集計したいですが、うまくいきません。ご存知の方、教えていただけますか?
  • テーブルAからID単位で人数を集計する方法を考えています。ファイル名が同じ場合は、1つとして集計したいですが、うまくいきません。PostgreSQL8.3を使用しているのですが、実現方法を教えていただけますか?
  • 重複データを省いて集計する方法を考えていますが、うまくいきません。PostgreSQL8.3を使用しています。テーブルAのID単位で人数を集計し、ファイル名が同じ場合は1つとして集計したいです。実現方法をご存知の方、ご教示いただけますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5253/13739)
回答No.1

ファイル名が同じなら、人数も同じ値が入っているという前提で... select ID, sum(人数) as 集計 from ( select ID, ファイル, 人数 from テーブルA group by ID, ファイル, 人数 ) group by ID; で、どうでしょうか。

kenken1917
質問者

お礼

お礼が遅くなり申し訳ございません。 頂いたSQLで処理を実現できました。 ファイル名が同じ場合、人数も同じ値が入っていますのでこちらのSQLで実施することに致しました。 ご協力頂き誠にありがとうございました。

その他の回答 (2)

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.3

   【テーブルA】    ID  ファイル  人数    0001 aaa.txt  2    0001 aaa.txt  3    0001 aaa.txt  3    0001 bbb.txt  3    0001 bbb.txt  3    0001 bbb.txt  3    0000 ccc.txt  2    0000 ccc.txt  3    0000 ccc.txt  3 の場合どのような結果をお望みでしょうか

kenken1917
質問者

お礼

ファイル名が同じ場合、人数も同じ値が入っていますのでNo1さんに教えて頂いたSQLで実施することに致しました。 ご協力頂きましてありがとうございました。

  • yorozu_ya
  • ベストアンサー率54% (76/140)
回答No.2

こんな感じかな。 SELECT B.ID, SUM(B.人数) AS 集計 FROM(SELECT DISTINCT * FROM テーブルA) AS B GROUP BY B.ID

kenken1917
質問者

お礼

お礼が遅くなり申し訳ございません。 ファイル名が同じ場合、人数も同じ値が入っていますのでNo1さんに教えて頂いたSQLで実施することに致しました。 ご協力頂きましてありがとうございました。

関連するQ&A