You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BigQuery中先对两列逐行求和再计算平均值?

在Google BigQuery中实现行内求和后计算平均值的SQL语法

你可以通过两种简洁的SQL写法实现需求,记得将your_project.your_dataset.your_table_name替换为你实际的项目、数据集和表名:

写法一:使用子查询分步计算

SELECT AVG(row_sum) AS average_total
FROM (
  SELECT grade1 + grade2 AS row_sum
  FROM `your_project.your_dataset.your_table_name`
)

这种写法先通过子查询生成每行grade1与grade2的和(命名为row_sum),再对所有行的row_sum计算平均值。

写法二:直接嵌套聚合函数(更简洁)

SELECT AVG(grade1 + grade2) AS average_total
FROM `your_project.your_dataset.your_table_name`

BigQuery会自动先逐行计算grade1 + grade2的结果,再对所有结果执行平均值计算,逻辑和你预期的两步完全一致。

示例数据验证

针对你提供的示例表格,两种写法都会得到相同结果:

  • 每行求和结果:128000、168000、90000
  • 平均值:(128000 + 168000 + 90000) / 3 ≈ 128666.67

内容的提问来源于stack exchange,提问作者Mahbub Ar Rashid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 17:06:02