计算表中的2列,并将结果作为其他列插入同一个表中

时间:2014-09-05 17:20:53

标签: sql sql-server

我创建了一个包含orderID,custId,unitprice,Quantity.Now等列的表。我想通过乘以数量* unitprice将其他列添加为Totalprice。

我通过将totalprice列添加到现有表来更改表 alter table orders添加totalprice int
然后我尝试使用插入查询
插入订单(总价)从订单中选择数量* unitprice
而且我也尝试过创建一些临时表,但临时表不会被进一步使用。

请让我知道如何插入此查询以插入列。

Totalprice =量*单价

2 个答案:

答案 0 :(得分:2)

添加列后,您不必INSERT任何记录。您需要的是UPDATE记录。

UPDATE Orders SET TotalPrice = Quantity * UnitPrice

或者,您可以查看computed columns。这样可以省去确保Total列与QuantityUnitPrice列保持同步的麻烦。

ALTER TABLE Orders ADD TotalPrice AS Quantity * UnitPrice

答案 1 :(得分:2)

您可以将此总价格列设为计算列。如下......

ALTER TABLE dbo.TableName 
ADD  totalprice AS (quantity*unitprice)
GO