2016-06-13 113 views
0

我正在嘗試添加計算列。Mysql中的計算列

alter table datatest add column amount2 double as (amount*rate) 

但在執行這個

+0

歡迎來到SO :-) 請看[如何問](http://stackoverflow.com/help/how-to-ask) – JimHawkins

回答

-1

MySQL不支持計算列我有錯誤。

您可以使用視圖來代替:

create view v_datatest as 
    select t.*, (amount * rate) as amount2 
    from datatest; 

注:

  • 在那些支持計算列的數據庫,類型是不是列定義的一部分。它來源於表達式(您可以使用cast()/convert()轉換爲特定類型)。
  • 使用浮點表示來存儲貨幣金額是一個壞主意。您應該使用decimal/numeric
  • 如果您不想使用視圖,則可以向表中添加一列(以及類型)並使用觸發器來維護該值。