我在一张表中有两列,如下所示:
CREATE TABLE Invoices
(
ID_Invoice...
....
UnitPrice decimal (15,2) NOT NULL,
Discount (15,2) NOT NULL,
)
所以我想在这个表中添加一个新列来计算最终价格 - UnitPrice
- Discount=TotalCost
?请帮忙。
我在一张表中有两列,如下所示:
CREATE TABLE Invoices
(
ID_Invoice...
....
UnitPrice decimal (15,2) NOT NULL,
Discount (15,2) NOT NULL,
)
所以我想在这个表中添加一个新列来计算最终价格 - UnitPrice
- Discount=TotalCost
?请帮忙。
如果您使用的是 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
列不同步。
Alter Table Invoices
Add TotalCost Decimal(15,2)
将列添加到您的表中
现在向新列添加值
Update Invoices
set TotalCost = UnitPrice - Discount
请让我知道它是否有效