组合类似条目的sum(),并包含where子句sql

iqjalb3h  于 2021-06-18  发布在  Mysql
关注(0)|答案(3)|浏览(319)

如果预订id匹配的话,我想从金额中加上数字。我在对这些数字求和以及添加where子句时遇到了麻烦。
到目前为止这是我的代码
此时,它正确地求和了这些数字,尽管如果我加上where,它不会显示任何结果 select *, Sum(amount) FROM payment group by booking_id where booking_id = 1 我尝试过一些方法,比如在查询中添加查询,但没有成功。我试图得到的结果如下。

booking_id   amount
----------------------
      1    |  5
      2    |  6
      1    |  6
      3    |  2
      3    |  3
      4    |  4

输出应为:

booking_id   amount
    ----------------------
          1    |  11
          2    |  6
          3    |  5
          4    |  4

我正在尝试对结果进行分组,以便值为1的booking\u id将返回5+6的总和。
我的目标是能够将具有相同预订id的金额相加,并且能够在这个查询中包含where子句

v2g6jxz6

v2g6jxz61#

你做错事只是为了写sql

select booking_id, Sum(amount) FROM payment
   where client_id = 1 -- your condition 
   group by booking_id

请检查此链接以获取订单

p4rjhz4m

p4rjhz4m2#

分组前应该在哪里

select booking_id , Sum(amount) FROM payment 
where booking_id = 1
group by booking_id
ybzsozfc

ybzsozfc3#

要按要求获得所有预订id,只需跳过 WHERE 条款:

select booking_id, Sum(amount)
FROM payment
group by booking_id

要获取特定标识的所有预订id(如稍后要求),请添加 WHERE 条款:

select booking_id, Sum(amount)
FROM payment
where client_id = 123
group by booking_id

相关问题