2016-11-21 7 views
0

bigqueryから、ページビューを1日と2つのカスタムディメンション(ヒットレベルとセッションレベルで1つずつ)で分割したレポートを取得しようとしています。このクエリで:bigqueryで異なる粒度の2つのカスタムディメンションによるページビューを取得

SELECT 
     date 
     ,SUM(totals.pageviews) as PVs 
     ,MAX(IF(hits.customDimensions.index = 11, hits.customDimensions.value,NULL)) AS x 
     ,MAX(IF(customDimensions.index = 1, customDimensions.value,NULL)) AS y 

FROM TABLE_DATE_RANGE([111111111.ga_sessions_] 
        ,TIMESTAMP('2016-10-01') 
        ,TIMESTAMP('2016-10-31')) 

     GROUP EACH BY 1 

私は次の取得:私は他の回答を見てきましたが、同様に十分な問題に対処する何かを見つけることができませんでした

Error: Cannot query the cross product of repeated fields customDimensions.index and hits.page.pagePath. 

。より良いクエリを提案できますか?

ありがとうございます!あなたは

がより全体に照会するには、」Dealing with data

以内に「children.ageとcitiesLived.yearsLived繰り返しフィールドの外積を照会することはできません」の報告Googleの例を見てみましょう、あなたのデータをフラット化する必要が

+0

に説明したように奇妙なことは、私はちょうど私たちのBQに対してこのクエリを実行し、それがうまく働いたということです。確認するだけで、エラーが継続するかどうかを確認するためにクエリを再実行していただけますか?あなたは 'hits.page.pagepath'を使用していませんが、まだエラーにはそれほど意味がないようです。 –

+0

[標準SQL](https://cloud.google.com/bigquery/docs/reference/standard-sql/)を使用すると、簡単にクエリを実行できます。例として[this post](http://stackoverflow.com/questions/40643254/grouping-and-pivoting-custom-dimensions/40643510#40643510)をご覧ください。 –

答えて

0

サブ選択Fを作成してみてください、table_date_rangeの制限を回避するために

SELECT fullName, age, gender, citiesLived.place FROM (FLATTEN([dataset.tableId], children)) WHERE (citiesLived.yearsLived > 1995) AND (children.age > 3) GROUP BY fullName, age, gender, citiesLived.place

:いずれかのフィールドを平坦化する必要がある1つのを繰り返しフィールド、 IRST

SELECT 
    hits.eventInfo.eventCategory, 
    hits.eventInfo.eventAction, 
    customDimensions.value 
FROM 
    FLATTEN((
    SELECT 
     hits.eventInfo.eventCategory, 
     hits.eventInfo.eventAction, 
     customDimensions.index, 
     customDimensions.value 
    FROM (TABLE_DATE_RANGE([dataset.table_], DATE_ADD(CURRENT_TIMESTAMP(), -3, 'DAY'), DATE_ADD(CURRENT_TIMESTAMP(), -1, 'DAY')))),hits.eventInfo.eventCategory) 

Official Google BigQuery issue and feature request tracker

+0

Yeap、その記事を読んだが、日付範囲で動作させることができなかった – DanSan

+0

bigqueryで記録された既知の問題https://code.google.com/p/google-bigquery/issues/detail?id=113回避策として、subselectを使ってみてください(上記の例を入れてください) –

+0

彼らは今、リクエストをクローズしたようです。 – DanSan

関連する問題