私のデータベースには、「fine」というテーブルがあります。そのテーブルには、issue_date、expiry_date、およびfine_amountという3つのフィールドがあります。私は、発行日からexpiry_dateを計算します。有効期限は、常にissue_dateより20日を持っている必要があり、だから私は、としてクエリを書いた:SQLでdate_addで計算フィールドを作成できません
ALTER TABLE fine ADD
expiry_date AS DATE_ADD(CURRENT_DATE,INTERVAL 20 DAY)
しかし、構文エラーがあります。私は解決策を見つけることができないようです。
また、fine_amountを10 *(現在の日数が有効期限を超えた場合、現在の日付と有効期限の日数の差)にします。それをどうやって行うのですか?
現在のテーブルを変更して計算カラムを作成するか、新しいテーブルを作成することを検討していますか? –
'fee'テーブルを変更するが、新しいテーブルを作成することは大したことではない –
[documentation](https://dev.mysql.com/doc/refman/5.7/en/create-table- generated-columns.html)。数式は非決定論的なので、計算された列にファインロジックを実装することはできません。 –