所以我无法为 mySQL 中的 table 创建计算列,它说无法从计算列计算计算列

So i am not able to create a calculated column for a table in mySQL, it says calculated columns cannot be calculated from calculated columns

我正在尝试创建计算列,但它显示 total_value 列错误,因为它无法从计算列 vat_value 创建... 有没有办法解决它,我迫切需要 table 中的这两列。 谢谢,

create table purchase(
invoice_num varchar(8),
product_id varchar(10),
product_name varchar(50),
supplier_name varchar(30),
gstn int(16),
vat_num varchar(12),
ph_num int(10),
quantity decimal(12,3),
unit varchar(3),
in_out char(1),
tax_value decimal(12,2),
gst_percent int(2),
igst decimal(12,2),
cgst decimal(12,2),
sgst decimal(12,2),
unloading int(8),
fare int(8),
vat_percent int(2),
vat_value decimal(8,3) as ((tax_value*vat_percent)/100) persistent,
total_value decimal(12,2) as (tax_value+igst+cgst+sgst+unloading+fare+vat_value)    
);

您不能在其他计算列的定义中引用一个计算列。

一种解决方法是,重构 total_value 的公式,如下所示 -

total_value decimal(12,2) as (tax_value+igst+cgst+sgst+unloading+fare+((tax_value*vat_percent)/100))