2016-06-13 20 views
0

computeedカラムを追加しようとしています。Mysqlの計算カラム

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

が、MySQLは計算列をサポートしていません。この

+0

へようこそso :-) [お問い合わせ方法](http://stackoverflow.com/help/how-to-ask)をご覧ください。 – JimHawkins

答えて

-1

を実行しながら、私はエラーを得ました。

あなたが代わりにビューを使用することができます。

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

注:計算カラムをサポートしていないデータベースで

  • を、タイプが列定義の一部ではありません。式から導出されます(cast()/convert()を使用して特定のタイプに変換できます)。
  • 浮動小数点表現を使用して金額を保存することは悪い考えです。代わりにdecimal/numericを使用してください。
  • ビューを使用しない場合は、(タイプとともに)テーブルに列を追加し、トリガーを使用して値を維持することができます。