什么叫计算列呢?简单来说就是某一列的值是通过别的列计算得来的。例如列值为1、b列值为2,c列 不需要手动插入,定义a+b的结果为c的值,那么c就是计算列,是通过别的列计算得来的。
在
MySQL 8.0
中,
CREATE TABLE
和
ALTER TABLE
中都支持增加计算列。下面以
CREATE TABLE
为例进行讲解。
举例:定义数据表
tb1
,然后定义字段
id
、字段
a
、字段
b
和字段
c
,其中字段
c
为计算列,用于计算
a+b
的值。首先创建测试表tb1
,语句如下:
CREATE TABLE tb1(
id INT,
a INT,
b INT,
c INT GENERATED ALWAYS AS (a + b) VIRTUAL
);
插入演示数据,语句如下:
INSERT INTO tb1(a,b) VALUES (100,200);
查询数据表
tb1
中的数据,结果如下:
mysql> SELECT * FROM tb1;
+------+------+------+------+
| id | a | b | c |
+------+------+------+------+
| NULL | 100 | 200 | 300 |
+------+------+------+------+
1 row in set (0.00 sec)
更新数据中的数据,语句如下:
mysql> UPDATE tb1 SET a = 500;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0
文章来自尚硅谷Mysql教学,仅供自己学习使用!!!