2012-09-04 22 views
12

私は大規模なトランザクションデータセットを扱っており、個々の顧客トランザクションの数を月単位でグループ化したいと考えています。GROUP BYのタイムスタンプ機能を使用

BAD_QUERY (expression STRFTIME_UTC_USEC([DATESTART], '%b') in GROUP BY is invalid)

これを達成するための簡単な回避策はありますか私はカレンダーテーブル(最も簡単なオプションかもしれない)構築する必要があります:私はGROUP BYにタイムスタンプ機能を使用すると、以下のエラーを返すことができないのですか?あなたがエイリアスを使用する必要が

答えて

20

SELECT STRFTIME_UTC_USEC(DATESTART, '%b') as month, COUNT(TRANSACTION) 
FROM datasetId.tableId 
GROUP BY month 
3

@Charlesは正しいが、列の数によってはさておき、あなたがすることができ、グループとしてです。

SELECT STRFTIME_UTC_USEC(DATESTART, '%b') as month, COUNT(TRANSACTION) as count 
FROM [datasetId.tableId] 
GROUP BY 1 
ORDER BY 2 DESC