MySQL の別の列に基づいて列を自動的に計算します
データベース プログラミングの世界では、テーブルはデータ ストレージの基礎ですが、場合によっては既存の列から追加情報を取得する必要があります。ここで計算列が登場し、別の列に基づいて値が自動的に更新される新しい列を作成する方法を提供します。
データベース設定
次の形式を考えてみましょう:
<code>id | value -------------- 1 6 2 70</code>
問題の説明
タスクは、「value」列の半分である「calculated」という列を追加することです。この計算列は、「値」列が変更されると自動的に更新されます。
解決策: 列を生成
MySQL 5.7.6 以降では、「生成されたカラム」と呼ばれる機能が導入されています。これらの列を使用すると、ビューと同様に、テーブルの不可欠な部分として、既存の列に基づいた動的な計算が可能になります。
生成される列には 2 つのタイプがあります:
実績
この例では、保存された生成列を使用します。これを追加する SQL ステートメントは次のとおりです:
<code>ALTER TABLE table_name ADD COLUMN calculated AS (value / 2) STORED;</code>
これにより、各行の「value」列の値の半分を含む「calculated」という名前の新しい列が作成されます。
メリットと注意点
列の生成には次の利点があります:
例
計算列を追加すると、テーブルは次のようになります:
<code>id | value | calculated ----------------------- 1 6 3 2 70 35</code>
結論
生成列は、計算列をテーブルに追加する強力な方法を提供します。 「stored」オプションを利用すると、計算列が自動的に更新され、インデックスを作成できるようになり、データ管理の柔軟性と効率が向上します。
以上がMySQL の別の列に基づいて列を自動的に計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。