MySQL5.7 新機能:GENERATED COLUMN日本語で「生成列」とも。mysql>CREATE TABLE gentest (a int, b int, c int GENERATED ALWAYS AS (a+b));mysql> INSERT INTO gentest (a,b) values (3,5),(2,9);mysql> SELECT * FROM gentest;+------+------+------+| a | b | c |+------+------+------+| 3 | 5 | 8 || 2 | 9 | 11 |+------+------+------+mysql> CREATE TABLE gentest2 (a int, b int,c int GENERATED ALWAYS AS ((a+b)*rand()));ERROR 3102 (HY000): Expression of generated column 'c' contains a disallowedfunction.
GENERATED COLUMNcol_name data_type[GENERATED ALWAYS]AS (expression)[VIRTUAL | STORED][UNIQUE [KEY]] [COMMENT comment][[NOT] NULL] [[PRIMARY] KEY]mysql> CREATE TABLE gentest (a int, b int,c int GENERATED ALWAYS AS (a+b));mysql> CREATE TABLE gentest (a int, b int,c int AS (a+b));