X列既不是GROUPED也不是AGGREGATED-StandardSQL / BigQuery

时间:2019-02-15 09:14:57

标签: python mysql sql google-bigquery data-analysis

我一直在阅读有关此内容的帖子,许多建议的解决方案都无法按我的意愿工作。我试图获取相同行的某些列的总和,然后在运行查询时选择所有其他列。

例如,当尝试对一列使用分组依据时,它不起作用。正如许多关于stackoverflow的帖子/问题中所建议的那样,解决方案是按选择部分中的所有列进行分组,这不会返回期望的结果。

好吧,这是我的问题,

我正在尝试运行以下查询:

SELECT
  date,
  campaign_id,
  ad_name,
  NOM_ENSEMBLE,
  SUM(impressions) AS IMPRESSIONS,
  SUM(clicks) AS CLICKS,
  SUM(spend) AS SPEND,
  Frequentation

FROM
  `my-project.dugut.for_analysis`

我上面提到了以下几列,例如,对于相同的NOM_ENSEMBLE,我得到了不同的展示次数和点击次数,我想创建一个表,其中包含“ NOM_ENSEMBLE”和“ DATE”以及展示次数,点击次数和支出的总和相同的DATE / NOM_ENSEBMLE!

2 个答案:

答案 0 :(得分:1)

  

我想创建一个包含“ NOM_ENSEMBLE”和“ DATE”的表格,其中包含相同的DATE / NOM_ENSEBMLE的印象数,点击数和花费!

如果要进行聚合,则需要GROUP BYGROUP BY应该只包含SELECT中未聚合的列。因此,查询应如下所示:

SELECT date, NOM_ENSEMBLE,
       SUM(impressions) AS IMPRESSIONS,
       SUM(clicks) AS CLICKS,
       SUM(spend) AS SPEND
FROM `my-project.dugut.for_analysis`
GROUP BY date, NOM_ENSEMBLE;

答案 1 :(得分:0)

对不起,您的问题尚未完全理解。我认为您可以使用窗口功能。

这里是引用ROLLINGSUM函数的链接:https://cloud.google.com/dataprep/docs/html/ROLLINGSUM-Function_60720435