12

大規模なトランザクション データ セットを扱っており、個々の顧客トランザクションの数を月ごとにグループ化したいと考えています。でタイムスタンプ関数を使用できずGROUP BY、次のエラーが返されます。

BAD_QUERY (GROUP BY の式 STRFTIME_UTC_USEC([DATESTART], '%b') は無効です)

これを達成するための簡単な回避策はありますか、それともカレンダー テーブルを作成する必要がありますか (これが最も簡単なオプションかもしれません)。

4

2 に答える 2

21

エイリアスを使用する必要があります。

SELECT STRFTIME_UTC_USEC(DATESTART, '%b') as month, COUNT(TRANSACTION)
FROM datasetId.tableId
GROUP BY month
于 2012-09-04T14:40:18.863 に答える
4

@Charlesは正しいですが、余談ですが、列番号でグループ化することもできます。

SELECT STRFTIME_UTC_USEC(DATESTART, '%b') as month, COUNT(TRANSACTION) as count
FROM [datasetId.tableId]
GROUP BY 1
ORDER BY 2 DESC
于 2016-03-15T18:12:59.613 に答える