Google bigquery 创建一个查询,该查询生成一个和并在一行中输出

Google bigquery 创建一个查询,该查询生成一个和并在一行中输出,google-bigquery,Google Bigquery,这是我一直在运行的代码: SELECT Model, Serial, SUM(ConnectionTime) OVER(ORDER BY Serial) FROM [dataworks-356fa:FirebaseArchive.test8] WHERE Model == "BlueBox-pH" 但是,当我这样做时,它会为模型的每次重复提供多行的总和。即使我取出Model并将WHERE子句更改为序列号,它仍然会多次产生相同的结果 我应该添加什么代码来确保每个序列号都是唯一的

这是我一直在运行的代码:

SELECT
   Model,
   Serial,
   SUM(ConnectionTime) OVER(ORDER BY Serial)
FROM [dataworks-356fa:FirebaseArchive.test8]
WHERE Model == "BlueBox-pH"
但是,当我这样做时,它会为模型的每次重复提供多行的总和。即使我取出Model并将
WHERE
子句更改为序列号,它仍然会多次产生相同的结果


我应该添加什么代码来确保每个序列号都是唯一的?

您正在使用一个窗口函数来求和您的值。这会导致行重复。这样做有什么具体的原因吗

通常情况下,金额如下:

SELECT
    Model,
    Serial,
    SUM(ConnectionTime)
FROM
    [dataworks-356fa:FirebaseArchive.test8]
WHERE
    Model == "BlueBox-pH"
GROUP BY
    Model,
    Serial 
这将为每个唯一的Model和Serial组合以及ConnectionTime之和输出一行