Google bigquery BigQuery:用于将聚合数据与唯一数据合并的SQL查询
我有一个小数据集,如下所示: 计算点计算如下:Google bigquery BigQuery:用于将聚合数据与唯一数据合并的SQL查询,google-bigquery,Google Bigquery,我有一个小数据集,如下所示: 计算点计算如下: 分子=分数/总和(分数) Denomenator=IF(分数=0选择分数,否则选择分数)/SUM(分数) Computed Points=分子/外延分子 如何在BigQuery中为相同的对象编写Sql查询?下面是我的查询的样子: Select Date, Activity, Model (Score/Sum(Score))/(CASE Points WH
分子=分数/总和(分数)
Denomenator=IF(分数=0选择分数,否则选择分数)/SUM(分数)
Computed Points=分子/外延分子
如何在BigQuery中为相同的对象编写Sql查询?下面是我的查询的样子:
Select Date, Activity, Model (Score/Sum(Score))/(CASE Points
WHEN 0 THEN Score
ELSE Points
END)/(SUM(Points)) as `Computed_Points` from samples.test;
但这会产生一个错误,即:
选择列表表达式引用在[1:9]处既不分组也不聚合的列印象
有人能帮我实现这一点吗?您想使用sum()作为窗口函数。。。类似
选择日期、活动、模型(分数/总和(分数)超过())/(案例分数
当0时得分
其他要点
结束)/(总和(点)超过())作为“计算点”
从样品中提取样品进行检测;
OVER()
表示窗口在整个表上是无界的
请参见要将sum()用作窗口函数。。。类似
选择日期、活动、模型(分数/总和(分数)超过())/(案例分数
当0时得分
其他要点
结束)/(总和(点)超过())作为“计算点”
从样品中提取样品进行检测;
OVER()
表示窗口在整个表上是无界的
参见下面的是关于BigQuery标准SQL的,是先前答案的一个清理版本
#standardSQL
select Date, Activity, Model, Score, Points,
if(Points = 0, 1, Score / Points)
* sum(Points) over() / sum(Score) over() as `Computed_Points`
from `samples.test`
当应用于问题输出的样本数据时
以下是BigQuery标准SQL,是先前答案的清理版本
#standardSQL
select Date, Activity, Model, Score, Points,
if(Points = 0, 1, Score / Points)
* sum(Points) over() / sum(Score) over() as `Computed_Points`
from `samples.test`
当应用于问题输出的样本数据时