2016-10-21 5 views
1

私は訪問ディメンション内でカスタムディメンションヒットを持つ訪問者の合計を取得したいと考えています。 私はこのクエリの助けを借りて、選択したすべての日付の合計としてこのデータを取得しましたが、それを日付別に分割するにはどうすればよいですか?Google BigQuery日付ごとにデータを訪問

事前に感謝します。

select sum(sessions) as total_sessions, from (
    select 
    fullvisitorid, 
    count(distinct visitid) as sessions, 
    from (TABLE_DATE_RANGE([XXX.ga_sessions_], TIMESTAMP('2016-09-01'), TIMESTAMP('2016-09-03'))) 
    where totals.visits = 1 
AND hits.customDimensions.index = 3 
AND hits.customDimensions.value = 'play' 
    group each by fullvisitorid 
) 

答えて

0

ga_sessionsテーブルは、だから、(Analytics to BigQuery Export schemaを参照)

dateフィールドを持っている - あなたは

以下の例のように、この dateフィールドを使用することができます
SELECT date, SUM(sessions) AS total_sessions FROM (
    SELECT 
    date, 
    fullvisitorid, 
    COUNT(DISTINCT visitid) AS sessions 
    FROM (TABLE_DATE_RANGE([XXX.ga_sessions_], TIMESTAMP('2016-09-01'), TIMESTAMP('2016-09-03'))) 
    WHERE totals.visits = 1 
    AND hits.customDimensions.index = 3 
    AND hits.customDimensions.value = 'play' 
    GROUP BY date, fullvisitorid 
) 
GROUP BY date 

あなたが/ BigQuery Standard SQLMigrate from BigQuery Legacy SQLを望むことができた場合は、例の下に使用することができます。

SELECT 
    _TABLE_SUFFIX AS date, 
    COUNTIF(EXISTS (SELECT 1 FROM UNNEST(hits), UNNEST(customDimensions) 
        WHERE TRUE OR (index = 3 AND value = 'play'))) AS sessions 
FROM `XXX.ga_sessions_*` 
WHERE totals.visits = 1 
AND _TABLE_SUFFIX BETWEEN '2016-09-01' AND '2016-09-03' 
GROUP BY date 

詳細はこちらWildcard Tables

0

ます(「表示オプション」の下に「使用レガシーSQLを」オフ)standard SQLを使用して、テーブルでこれを試すことができますか?私は疑問を誤解しているかもしれませんが、それはあなたが望むものと信じているcustomDimensionsの条件に一致する毎日の訪問の総数を計算します。あなたは上記のクエリのためにBigQueryレガシーSQLで滞在したい場合

SELECT 
    _PARTITIONTIME, 
    COUNTIF(EXISTS (SELECT 1 FROM UNNEST(hits), UNNEST(customDimensions) 
        WHERE index = 3 AND value = 'play')) as sessions 
FROM `XXX.ga_sessions_*` 
WHERE totals.visits = 1 
GROUP BY _PARTITIONTIME; 
関連する問題