首頁 > 資料庫 > mysql教程 > 如何根據 MySQL 中的另一列建立計算列?

如何根據 MySQL 中的另一列建立計算列?

Mary-Kate Olsen
發布: 2025-01-17 08:06:12
原創
528 人瀏覽過

How Can I Create a Calculated Column Based on Another Column in MySQL?

在 MySQL 中匯出新資料:計算欄位

資料庫管理通常需要根據現有資訊產生附加資料。 MySQL 提供了一個強大的解決方案:計算列。這些列會自動計算同一表中其他列的值,無需手動計算。

利用 MySQL 的產生欄位

MySQL 版本 5.7.6 及更高版本支援 產生欄位,這是根據其他資料列動態計算列值的功能。 此功能類似於 VIEW,但關鍵區別在於生成的列是表結構的組成部分。

虛擬與儲存:選擇正確的方法

產生的欄位有兩種:

  • 虛擬欄位:僅在存取行時依需求計算值。
  • 儲存欄位:在插入或更新行時計算值,並儲存結果。

一個重要的區別是儲存的生成列是可索引的,與虛擬列不同。

範例:計算一半的值

讓我們用一個實際的例子來說明。 假設我們需要一列代表現有「值」列值的一半。使用儲存的產生列:

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

INSERT INTO my_table (id, value) VALUES
  (1, 6),
  (2, 70);</code>
登入後複製

這將建立帶有 my_tableidvalue 列的 half_value。 每當 half_value 列發生變更時,value 都會自動填入和更新。 STORED 關鍵字確保計算值被持久儲存。

以上是如何根據 MySQL 中的另一列建立計算列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板