おはようございます。Google アナリティクス API でこの動作を見たことがありますが、SQL 担当者としては奇妙に感じます。adContent のすべての値のリストを取得したいので、and をクエリga:adContent
します (理由は明確に定義されていませんが、メトリックも選択する必要があるため) ga:organicSearches
。同じグループ (キャンペーン) にあるため、サーバー上でパフォーマンスが向上する可能性があります。
adContent は "(not set)"、organicSearches は 516,674 です。あ、adContent は使われてないのかな。しかし、マーケティング部門はそうであると断言し、説得力のあるスクリーン ショットを作成します。
後で、任意にメトリックを に変更しますga:transactions
。私が目覚めた宇宙では、その列に返される実際の値を除いて、これは何にも影響を与えないはずです. 代わりに、 のもっともらしい値を持つ無数の行を取得しますga:adContent
。の値ga:transactions
はゼロの場合があるため、GA が「メトリック > 0」をフィルタリングしていたわけではありません。
私のクエリにはフィルターがありません。これら 2 つのバリアントの間で日付範囲を変更しませんでした。誰が何が起こっているのか教えてもらえますか? 上記のクエリは次のように変換されると予想されます。これは、まったく同じ数の行を返す必要があります。
SELECT adContent, SUM(organicSearches)
FROM Campaign
WHERE Date BETWEEN X AND Y
GROUP BY adContent
SELECT adContent, SUM(transactions)
FROM Campaign INNER JOIN ECommerce ON <something>
WHERE Date BETWEEN X AND Y
GROUP BY adContent
GA はおそらくバックエンドで通常の RDMS を使用していないことを認識していますが、1 + 1 はどのデータベースでも 2 に等しいことは確かです!