大規模なトランザクション データ セットを扱っており、個々の顧客トランザクションの数を月ごとにグループ化したいと考えています。でタイムスタンプ関数を使用できずGROUP BY
、次のエラーが返されます。
BAD_QUERY (GROUP BY の式 STRFTIME_UTC_USEC([DATESTART], '%b') は無効です)
これを達成するための簡単な回避策はありますか、それともカレンダー テーブルを作成する必要がありますか (これが最も簡単なオプションかもしれません)。
大規模なトランザクション データ セットを扱っており、個々の顧客トランザクションの数を月ごとにグループ化したいと考えています。でタイムスタンプ関数を使用できずGROUP BY
、次のエラーが返されます。
BAD_QUERY (GROUP BY の式 STRFTIME_UTC_USEC([DATESTART], '%b') は無効です)
これを達成するための簡単な回避策はありますか、それともカレンダー テーブルを作成する必要がありますか (これが最も簡単なオプションかもしれません)。
エイリアスを使用する必要があります。
SELECT STRFTIME_UTC_USEC(DATESTART, '%b') as month, COUNT(TRANSACTION)
FROM datasetId.tableId
GROUP BY month
@Charlesは正しいですが、余談ですが、列番号でグループ化することもできます。
SELECT STRFTIME_UTC_USEC(DATESTART, '%b') as month, COUNT(TRANSACTION) as count
FROM [datasetId.tableId]
GROUP BY 1
ORDER BY 2 DESC