如何对两个“类型”值之间的行进行求和?

时间:2014-03-21 21:57:31

标签: mysql

我对PHP + MySQL有一些基础知识,但我想知道是否可以完成这样的功能。如果是这样,我该如何实施呢?任何建议将不胜感激!

下面是数据表:

id |   description         |   amount  |   type   |
---+-----------------------+-----------+----------+
1      FISH BURGER MEAL        NULL        HEADER
2      Burger                  5.40        ITEM
3      Fries (S)               2.20        ITEM
4      Cola (S)                2.00        ITEM
5      SUBTOTAL                ????        SUBTOTAL

所以问题是:
如何进行所有SUM(amount)

type == "ITEMS" WHERE between a "HEADER" type and a "SUBTOTAL" type?

在这种情况下,函数应该返回9.60的值。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在纯SQL中执行此操作:

SELECT SUM(amount) FROM table WHERE description != "SUBTOTAL"

NULL值并不能为总和添加任何内容。

但考虑到你可能在这样的表中有多个订单,你应该重新考虑数据库设计,因为这些订单会很快混乱。