sql - 我想对一列求和,直到达到负值,然后在 Google BQ 中重新开始求和
问题描述
ID | 数量 |
---|---|
美国广播公司 | 1 |
美国广播公司 | 1 |
美国广播公司 | -1 |
美国广播公司 | -1 |
xyz | 1 |
xyz | -1 |
输出:
ID | 总和(数量) |
---|---|
美国广播公司 | 2 |
xyz | 1 |
解决方案
根据您共享的预期输出,您似乎只是对正值求和。您可以尝试以下方法。
SELECT
ID,
SUM(
CASE
WHEN quantity > 0 THEN quantity
ELSE 0
END
)
FROM
my_table
GROUP BY
ID
让我知道这是否适合您。如果不是,请提供更多示例数据和结果。
推荐阅读
- laravel - ErrorException: in_array() 期望参数 2 是数组,文件中给出的布尔值
- machine-learning - sklearn 的 roc_curve() 函数返回不同维度的阈值和 fpr
- python-3.x - 将目录中的多个文件转换为 .txt 格式。但是文件名变成二进制
- c# - 将会议添加到活动 Google Calendar API
- react-native - 将大数据存储在本机反应中以供离线使用
- laravel-dusk - “灯塔在尝试加载类型时失败:
确保该类型存在于您的架构定义中。” - sonarqube - 如何使用 Sonarqube API 获取每个组件(文件)的指标详细信息
- javascript - 无论级别如何,我都试图展平阵列。我在调试器中运行它。它运行良好,直到最后一个花括号
- javascript - 如何让组件中的 react-datepicker 工作
- function - squareOn的foldr - Haskell