【MySQL】MYSQL5.7 创建/修改虚拟列

创建表:

CREATE TABLE `表名` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL COMMENT '名称',
  `attach` json DEFAULT NULL COMMENT 'JSON字段',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

创建虚拟列:

alter table 表名 add column 虚拟列名 varchar(255) GENERATED ALWAYS AS (json_extract(`attach`,'$.虚拟列名')) VIRTUAL;

修改虚拟列:

alter table 表名 modify column 虚拟列名 varchar(255) GENERATED ALWAYS AS (json_extract(`attach`,'$.虚拟列名')) VIRTUAL;

你可能感兴趣的:(MySQL)