Select 我如何修复错误;选择既不分组也不聚合的列表表达式[…]引用";在BigQuery中?

Select 我如何修复错误;选择既不分组也不聚合的列表表达式[…]引用";在BigQuery中?,select,group-by,google-bigquery,reference,aggregate,Select,Group By,Google Bigquery,Reference,Aggregate,在BigQuery中运行以下查询时,我收到错误“select list expression Opportunity.id references is not grouped and aggregated”: SELECT Opportunity.id AS `Opportunity_Id`, Opportunity.testing_only__c AS `Opportunity_Testing_only`, MAX(DatedConversionRate.startdate) AS

在BigQuery中运行以下查询时,我收到错误“select list expression Opportunity.id references is not grouped and aggregated”:

SELECT
  Opportunity.id AS `Opportunity_Id`,
  Opportunity.testing_only__c AS `Opportunity_Testing_only`,
  MAX(DatedConversionRate.startdate) AS `DatedConversionRate_Start_date`,
FROM
  `dataset.Opportunity` Opportunity
LEFT JOIN 
  `dataset.DatedConversionRate` DatedConversionRate 
  ON DatedConversionRate.isocode = Opportunity.currencyisocode
WHERE
  DatedConversionRate.startdate < CURRENT_TIMESTAMP()
选择
Opportunity.id为'Opportunity\u id`,
Opportunity.testing_only__c作为'Opportunity_testing_only',
最大值(DatedConversionRate.startdate)为“DatedConversionRate\u Start\u date”,
从…起
`数据集.机遇`机遇
左连接
`dataset.DatedConversionRate`DatedConversionRate
日期转换率.isocode=Opportunity.CurrencySocode
哪里
DatedConversionRate.startdate<当前时间戳()

问题是什么?我如何解决它?

中删除
Opportunity.id
选择
或按其分组:

SELECT
  Opportunity.id AS `Opportunity_Id`,
  MAX(DatedConversionRate.startdate) AS `DatedConversionRate_Start_date`,
FROM
  `dataset.Opportunity` Opportunity
LEFT JOIN 
  `dataset.DatedConversionRate` DatedConversionRate 
  ON DatedConversionRate.isocode = Opportunity.currencyisocode
WHERE
  DatedConversionRate.startdate < CURRENT_TIMESTAMP()
GROUP BY Opportunity.id
选择
Opportunity.id为'Opportunity\u id`,
最大值(DatedConversionRate.startdate)为“DatedConversionRate\u Start\u date”,
从…起
`数据集.机遇`机遇
左连接
`dataset.DatedConversionRate`DatedConversionRate
日期转换率.isocode=Opportunity.CurrencySocode
哪里
DatedConversionRate.startdate<当前时间戳()
按Opportunity.id分组

如果我添加了groupby Opportunity.id,那么在下一个选择中,错误将被类似的错误所取代:“选择list expression Opportunity.testing_only__c引用,它既不是分组的,也不是聚合的”也将其分组:
groupby Opportunity.id,Opportunity.testing_only___c
,因此如果我选择了30个字段,我必须按所有人分组?如果你有
max()
-那么是的。