我在一个表中有两列,如下所示:
CREATE TABLE Invoices
(
ID_Invoice...
....
UnitPrice decimal (15,2) NOT NULL,
Discount (15,2) NOT NULL,
)
所以我想在此表格中添加一个新列,计算最终价格 - UnitPrice
- Discount=TotalCost
?请帮忙。
答案 0 :(得分:1)
如果您使用的是SQL Server,请尝试计算列:
CREATE TABLE Invoices
(
ID_Invoice...
....
UnitPrice decimal (15,2) NOT NULL,
Discount (15,2) NOT NULL,
TotalCost AS UnitPrice - Discount
)
如果您使用的是MySQL,那么您唯一的选择就是添加一个物理列。不要这样做 - 它会使桌子非规范化并且不会带来任何好处。只需动态查询该值:
SELECT
ID_Invoice,
UnitPrice,
Discount,
UnitPrice - Discount AS TotalCost
MySQL查询非常简单,如果不存储其他列,则无需担心TotalCost
,Discount
和UnitPrice
列不同步。
答案 1 :(得分:0)
Alter Table Invoices
Add TotalCost Decimal(15,2)
将列添加到您的表
现在要为新列添加值
Update Invoices
set TotalCost = UnitPrice - Discount
如果有效,请告诉我