Sql 添加不同表中的值,并将总值插入另一个表中
我有几个表(比如说5个表),我想对5个表中的每一个表中的一个特定条目求和,并将该和放在一个表中。 例如: 表1Sql 添加不同表中的值,并将总值插入另一个表中,sql,sql-server,sum,ssms,sql-server-2014,Sql,Sql Server,Sum,Ssms,Sql Server 2014,我有几个表(比如说5个表),我想对5个表中的每一个表中的一个特定条目求和,并将该和放在一个表中。 例如: 表1 product_one_id name price 1 item1 50.25 2 item2 100.25 表二 product_two_id name price 1 item3 25.25 2 item4 70.
product_one_id name price
1 item1 50.25
2 item2 100.25
表二
product_two_id name price
1 item3 25.25
2 item4 70.25
表11总计
product_total_id name price_total
1 total1 120.50 //get total from item1 + item4
2 total2 125.50 //get total from item2 + item3
这不是一个正确的语法,而是为了说明我要做的事情
INSERT INTO Table_Total(product_total_id, name, price_total)
VALUES (1, 'total1', ((select price from Table_One where product_one_id = 1) + (select price from Table_Two where product_two_id = 4));
虽然我不完全确定您为什么需要这样做,但这应该可以使用
交叉连接
,它本质上产生了一个笛卡尔积
:
insert into table_total
select 1, 'total1', t1.price + t2.price
from table_one t1 cross join table_two t2
where t1.table_one_id = 1
and t2.table_two_id = 2;
产品一个id=1
与产品二个id=2
联系起来,以获得价格总额
?@sgedes的观点很重要。如果你能定义产品1和产品2之间的关系,你想做的很简单。我正在建立一个计算机商店数据库。Product_one_id是计算机部件的型号,price_total是总数。所以一个表只有cpu部件和它们的价格,另一个表有gpu部件和它们的价格。一个包含cpu和gpu总价的表