MySQL一表查询出来的数据插入到二表中,两表只有一个字段相同

时间:2021-07-03 15:09:52
现在有两个表  两个表只有一个JL_info_id的字段是一致的 ,其他的不一样 我现在想从1表查询所有的JL_info_id  然后插入到二表的JL_info_id中  请问该怎么实现呢?注意俩表只有一个字段相同 
比如一表查询出来
JL_info_id
         1
         2
         3
         4
那么插入二表的结果是
JL_info_id             class_1
         1                          0
         2                          0
         3                          0
         4                          0
class_1字段我设置了默认值,可以不用考虑插入,主要是插入JL_info_id


DROP TABLE IF EXISTS `jiaolian_info`;

CREATE TABLE `jiaolian_info` (
  `JL_info_id` smallint(6) NOT NULL AUTO_INCREMENT COMMENT '教练档案信息ID',
  PRIMARY KEY (`JL_info_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `appointment_info_1`;

CREATE TABLE `appointment_info_1` (
 `class_1` int(6) NOT NULL DEFAULT '0' COMMENT '第一课时',
  `JL_info_id` smallint(6) NOT NULL COMMENT '教练的ID',
  PRIMARY KEY (`JL_info_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

3 个解决方案

#1



插入语句比较简单:


insert into jiaolian_info (appointment_info_1)
select JL_info_id
from appointment_info_1

但是有个问题,因为你的2个表都有主键,把这个L_info_id字段插入第2个表,如果有重复数据,就会报错

#2


引用 1 楼 yupeigu 的回复:
插入语句比较简单:


insert into jiaolian_info (appointment_info_1)
select JL_info_id
from appointment_info_1

但是有个问题,因为你的2个表都有主键,把这个L_info_id字段插入第2个表,如果有重复数据,就会报错

这个貌似不对 我试了下错误

#3


修正了下2L的 好了 谢谢2L提供的思路 多谢

#1



插入语句比较简单:


insert into jiaolian_info (appointment_info_1)
select JL_info_id
from appointment_info_1

但是有个问题,因为你的2个表都有主键,把这个L_info_id字段插入第2个表,如果有重复数据,就会报错

#2


引用 1 楼 yupeigu 的回复:
插入语句比较简单:


insert into jiaolian_info (appointment_info_1)
select JL_info_id
from appointment_info_1

但是有个问题,因为你的2个表都有主键,把这个L_info_id字段插入第2个表,如果有重复数据,就会报错

这个貌似不对 我试了下错误

#3


修正了下2L的 好了 谢谢2L提供的思路 多谢