-1

我的数据库中有 F_table 和 S_table。我想将 F_table 的 Quantity_column 的所有值的总和插入到 S_table 的 Total_column 中。为此,我必须用 JAVA 编写什么?

假设我有两个表,一个是 Product_table,另一个是 Stock_table。在 Product_table 中有 ID、Name、Quantity 等列。在 Stock_table 中有 ID、TotalProduct 等列。现在我想要 Product_table 的所有原始数量列的总和,并将其插入 Stock_table 的 TotalProduct 列。每次我添加任何产品及其数量时,TotalProduct 都会自动增加。为了得到我必须在 JAVA 中做的事情?

对不起,如果这是一个新手类型的问题。我其实是个初学者。如果有人帮助我,那就太好了。

4

1 回答 1

1

如果我理解正确,您想从产品表中获取每个 ID 的总数量,并将其插入到库存表中,是吗?

下面将为您提供按 id 分组的数量总和:

select id, sum(quantity) from product_table group by id;

所以如果你有:

1, test1, 5
1, test2, 10
2, test3, 20
2, test4, 1
3, test5, 5

你会得到类似的东西:

1, 15
2, 21
3, 5

然后只需将这些插入正确的表中。

要将两者结合起来,您应该能够执行以下操作:

insert into stock_table 
select id, sum(quantity) from product_table group by id;

请记住,这完全是您要询问的 SQL 问题。但要使其与 jdbc/java 相关,类似这样的 jdbc 将是:

String sql = "insert into stock_table select id, sum(quantity) from product_table group by id";
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.executeUpdate();

stmt.close();

您可能想要检查 stmt.executeUpdate() 更新/插入的行数。

于 2017-03-29T18:36:33.517 回答