mysql 将select查询的值赋给update set语句中

表tenant_oper结构:

create table `tenant_oper` (
  `id` int(11) not null auto_increment, 
  `oper_name` varchar(255) not null,
  `oper_code` varchar(255) not null,
  `remark` varchar(512) default "",
  `menu_id` int default 0,
  primary key (`id`)
) engine=InnoDB default charset=utf8;

表tenant_menu结构:

create table `tenant_menu` (
  `id` int(11) not null auto_increment, 
  `menu_code` varchar(255) not null,
  `menu_name` varchar(255) not null,
  `menu_position` smallint not null,
  `menu_url` varchar(255) default "",
  `parent_id` int default 0,
  primary key (`id`)
) engine=InnoDB default charset=utf8;


sql语句:
update tenant_oper set oper_code = '5_4_1_1', menu_id = (select id from tenant_menu where menu_code = '5_4_1') where oper_code = '5_4_1';



你可能感兴趣的:(mysql)