mysql查询结果未存储在dbase中

时间:2018-09-13 10:28:09

标签: mysql phpmyadmin

我的简单目标是使用phpmyadmin中的sql选项添加2个值并将结果存储在mysql数据库的另一列中。

我正在使用的查询显示了我想要的结果(到目前为止很好)。但是,只要我单击表格以刷新页面,结果就消失了。

enter image description here

我的查询:SELECT *, (price + fee) as total FROM products;

enter image description here

当我在左列中点击表格名称时,我会再次看到第一张图像的内容。好像查询从未发生过。

有人建议改善查询以正确存储数据吗?

2 个答案:

答案 0 :(得分:0)

您没有在数据库中存储任何值,只是从products表中进行选择,并添加一个临时列以及其他两列之和。此列仅存在于您刚刚执行的查询的结果中。

您可以通过创建view来实现所需的目标:

CREATE VIEW products_sum AS SELECT *, (price + fee) as total FROM products

然后,您可以:

SELECT * FROM products_sum

我建议您将SUM列的名称更改为其他名称,因为您还有另一列具有该名称。如果计划将总数存储在总数列中,则必须执行更新instad:

UPDATE products SET total = (price+fee)

答案 1 :(得分:0)

作为当前的解决方法,您可以添加其他字段和用于更新此字段的触发器

ALTER TABLE products ADD sum INT

并添加触发器

CREATE TRIGGER newtrigger AFTER INSERT
ON products
FOR EACH ROW
UPDATE products SET NEW.sum=NEW.price+NEW.fee