首頁 >資料庫 >mysql教程 >MySQL 可以根據表格的資料列自動計算另一個欄位嗎?

MySQL 可以根據表格的資料列自動計算另一個欄位嗎?

Linda Hamilton
Linda Hamilton原創
2025-01-17 07:46:12862瀏覽

Can MySQL Automatically Calculate a Table Column Based on Another?

基於其他欄位計算欄位

問題:

資料庫表能否根據另一列自動計算一列,類似於視圖,但整合到表本身?

答案:

在 MySQL 5.7.6 及更高版本中,產生的欄位提供了此功能。

產生的欄位類型:

  • 虛擬 (預設): 讀取記錄時依需求計算。
  • 儲存: 寫入或更新新記錄時計算。

實作計算列:

在提供的範例中,我們希望建立一個名為「calculated」的計算列,其值為「value」列的一半。使用儲存的生成列,我們可以如下實現:

<code class="language-sql">CREATE TABLE order_details (
    id INT PRIMARY KEY,
    value INT,
    calculated AS (value / 2) STORED
);

INSERT INTO order_details (id, value) VALUES
    (1, 6),
    (2, 70);</code>

計算列將自動填入所需的值 (3 for > ... 此處原文缺失,應補充完整)。

以上是MySQL 可以根據表格的資料列自動計算另一個欄位嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn