插入数据并在列中添加前一行数据

Posted

技术标签:

【中文标题】插入数据并在列中添加前一行数据【英文标题】:insert data with add previous row data in a column 【发布时间】:2013-08-07 14:39:48 【问题描述】:

可能是简单的方法,但我不能这样做。我尝试sum()in 插入操作,但它不起作用。我有表名amount

id total_amount 1 200 2 400 3 600 4 800 5 1000

我想在total_amount 中插入一个值时,它会插入和汇总以前的数据。 假设如果我想在总量中添加500,它将插入1500

id total_amount 6 1500

如果我想添加300 它插入1800

id total_amount 7 1800

我该怎么做?

【问题讨论】:

是否有理由需要将此数据存储在表中而不是在 VIEW 中计算? 未查看。我想直接存储在一个表中 【参考方案1】:

您想将insert 语句与查询一起使用:

insert into t(id, total_amount)
    select max(id)+1, sum(total_amount) + 300
    from t;

这也是设置id 的值。如果是auto_increment,那就没必要了。

【讨论】:

但是如果我有另一列我该如何插入【参考方案2】:

如果你想添加500 例如:

insert into your_table (total_amount)
select sum(total_amount) + 500
from your_table

【讨论】:

以上是关于插入数据并在列中添加前一行数据的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Spark 数据框中的 lit 在列中插入值?

将行与标题进行比较,然后在列中插入值并在 VBA 中进行重复检查

在列中插入条件行

Python QTableView:如何在列中插入项目

MySQL - 无法在列中插入 NULL 值,但我指定了默认值?

MySQL - 无法在列中插入 NULL 值,但我指定了默认值?