MySQL高级SUM功能

时间:2016-05-30 19:45:57

标签: mysql

美好的一天!

我很抱歉如果这个问题已被提出,但我有点急,所以我不确定。

我有两张桌子:

Table.Cars Table.Price

在表中汽车:

ID Auto_Increment Primary key NOT NULL
Name VARCHAR(30)

表中价格:

CarsID Primary key NOT NULL
Units Int
Price_per_unit decimal(10,2)
Total decimal(10,2)

所以,我需要做的是,创建列(TOTAL *(这个名称不需要这个)),在表Price中,设置它做数学函数。

基本上,我希望Column.Total显示Units * price_per_unit,它将是:

ALTER TABLE Price
ADD TOTAL Decimal(10,2)

UPDATE Price SET Total = SUM(Units * Price_per_unit);

这将是这样的:

---------------------------------------------------
| ID | Units | Price_per_unit |   Total   | TOTAL |
---------------------------------------------------
| 1  | 12    | 30000,00       | 360000,00 | NULL  |
| 2  | 5     | 12000,00       | 60000,00  | NULL  |

这就是我的问题。我想要TOTAL,看起来像这样:

---------------------------------------------------------
| ID | Units | Price_per_unit |   Total   | TOTAL       |
---------------------------------------------------------
| 1  | 12    | 30000,00       | 360000,00 | 420000      |
| 2  | 5     | 12000,00       | 60000,00  |             |
|_______________________________________________________|

所以,下次,我在表Price中添加新记录,我需要TOTAL,通过从Units * Price_pre_unit获取数据来自动调整我的表。

所以我的问题是,如何进行此查询?

1 个答案:

答案 0 :(得分:1)

如果您希望Mysql数据库自动执行,您似乎正在寻找触发器。您应该一次调整此代码,触发器将永远处理它:

{% extends '::baseEmail.html.twig' %}
{% use 'form_div_layout.html.twig' %}

{% form_theme form _self %}

{% block money_widget %}
    here my the content of the block
{% endblock %}

{% block content %}
    {{ form(form) }}
{% endblock %}