少し複雑なことを行うクエリを作成しようとしていますが、正しい方向に向ける可能性のあるものを見つけることができませんでした。おそらくあなたが助けることができます!
これはソース データです。
7457, "05:06:26 UTC", 15
7457, "05:06:26 UTC", 15
7457, "05:06:26 UTC", 15
7457, "05:06:26 UTC", 15
2341, "05:12:34 UTC", 10
2341, "05:12:34 UTC", 10
2341, "05:12:34 UTC", 10
2341, "05:12:34 UTC", 10
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:34 UTC", 15
5678, "05:12:39 UTC", 15
5678, "05:12:39 UTC", 15
1111, "06:00:00 UTC", 10
2222, "07:00:00 UTC", 15
3333, "08:00:00 UTC", 10
重複した統計を見つけるためのクエリがあります。
SELECT userID, timestamp, statType, COUNT(*) - 1 AS DuplCount
FROM [dataset1.table1]
GROUP BY userID, timestamp, statType
HAVING DuplCount > 0;
(同じユーザー ID とタイムスタンプを持つ統計のみが重複と見なされることに注意してください。)
これにより、次のようなテーブルが得られます
userID timestamp statType DuplCount
7457 05:06:26 UTC 15 3
2341 05:12:34 UTC 10 3
5678 05:12:34 UTC 15 7
5678 05:12:39 UTC 15 1
このデータをさらに統合して、別のテーブルに 1 つの行として挿入できるようにしたいと考えています。同じ statType の重複数の合計です。私はそれが次のように見えるようにしたい
table stat10DuplCount stat15DuplCount
dataset1.table1 3 11
どのように進めればよいかわかりません...これはすべて 1 つのクエリで実行できますか (推奨)、それとも複数のクエリを実行するか、クエリ後のデータ処理を行う必要がありますか?