Googleスプレッドシートでデータをグループ化する方法は?


96

Googleスプレッドシートに次の表があります。

Name | Value
A    | 10
B    | 100
A    | 20
B    | 200
C    | 1000

クエリに基づいて別のテーブルを作成するにはどうすればよいですか:

select name, sum(value), count(value) from table group by name

次のようになります。

Name | SUM   | COUNT
A    | 30    | 2
B    | 300   | 2
C    | 1000  | 1

回答:


109

このQUERY機能を使用すると、目標を達成できます。

=QUERY(Data!A1:B6;"select A, sum(B), count(B) group by A")

スクリーンショット

ここに画像の説明を入力してください

他の機能を使用すると、同様に実現可能になります。

add this formula in A2:
=UNIQUE(Data!A2:A)

add the following formulas in B2 and C2 and copy down to B4 and C4 respectivey 
=SUM(FILTER(Data!$B$2:B;Data!$A$2:A=A2))
=COUNTA(FILTER(Data!$B$2:B;Data!$A$2:A=A2))

サンプルファイルを作成しました:QUERY vs. FUNCTIONS




42

ピボットテーブルを使用して、Googleスプレッドシートのデータをグループ化できます。


なぜ-1ですか?ピボットテーブルは間違いなくそれを行います!googledocs.blogspot.com/2011/05/...
Mehper C. Palavuzlar

質問はSQLを使用して行うことに関するものだったため
ジェイコブJan Tuinstra

11
彼は質問で明確に定義した別のテーブルを作成したいと考えており、ピボットテーブルはこのテーブルを作成します。これは有効な答えです。
Mehper C. Palavuzlar

2
ピボットテーブルは、おそらく質問のコメントセクションで言及する必要があります。それは間違いなく有用で関連していますが、質問に正確に答えるわけではありません-質問がクエリに関するものであり、QUERY関数が答えだからです。
デイブ14

4
質問はQUERYを求めた場合であっても、OPはこれらの可能性を検討していないかもしれないので、それは、他の回答を言及する良いことだ、または彼らはOPが言及したアプローチに勝る利点を有することができる
Vaddadi Kartick

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.