想获得 运行 总佣金 SQL table

Would like to get running total of comission SQL table

我正在尝试从 table、"policies"

中获得以下结果
+-------------+------------------+
|Commission   |Total Commission  |
+-------------+------------------+
|108          |108               |
+-------------+------------------+
|50           |158               |
+-------------+------------------+
|12           |170               |
+-------------+------------------+

and so on...

到目前为止,我的查询如下所示:

SELECT
  P.commission
  SUM(P.commission) OVER (PARTITION BY P.id ORDER BY P.id) AS "Total Commission"
FROM
  policies P

除了使用 OVER 似乎不起作用(SELECTSUM()FROM 等词都会将文本颜色更改为蓝色,因为它们re 关键字)

有人可以建议一种方法让这个按照我想要的方式工作

EDIT:: p.policy_id didn't exist. Was just p.id, corrected.
EDIT2:: incorrect spelling of "commission", corrected

进一步编辑:

我现在正在使用以下查询,它正在获取以下结果:

SELECT p.commission,
   (SELECT SUM(p2.commission)
    FROM policies p2
    WHERE p2.id = p.id AND p2.id <= p.id
   ) AS total_commission
FROM policies p;


+-------------+------------------+
|Commission   |Total Commission  |
+-------------+------------------+
|108          |108               |
+-------------+------------------+
|50           |50                |
+-------------+------------------+
|12           |12                |
+-------------+------------------+

您可能正在使用 MySQL,它不支持 window 函数。

您可以改用相关子查询:

SELECT p.comission,
       (SELECT SUM(p2.comission)
        FROM policies p2
        WHERE p2.id = p.id and p2.policy_id <= p.policy_id
       ) as total_comission
FROM policies p;