小编Nat*_*Nat的帖子

在左连接表中创建缺少的行

我有两个共享主键的表.我的设计很糟糕,事实证明我需要确保a1中的每条记录都在a4中有相应的记录

查询:

SELECT a1.id1, a4.id4
FROM  `a1` 
LEFT JOIN  `a4` ON a1.id1 = a4.id4
Run Code Online (Sandbox Code Playgroud)

结果:

a1.id1.............a4.id4  
00000001    ......NULL  
00000002    ......NULL  
00001001    ......00001001  
00001002    ......00001002  
Run Code Online (Sandbox Code Playgroud)

使用a1的相应键将a4中的行插入的最佳方法是什么?在上面的例子中,我需要将记录00000001和00000002插入到a4中.应该保留00001001和00001002,因为它们已经存在于a1和a4中

数据库架构:

CREATE TABLE `a1` (
  `id1` int(8) unsigned zerofill NOT NULL auto_increment,
  `Shrt_Desc` varchar(200) default NULL,
  `ptype` int(5) NOT NULL,
  `userid` tinyint(5) NOT NULL,
  `submit_id` int(11) NOT NULL,
  `submit_time` int(11) NOT NULL,
  `update_id` int(11) NOT NULL,
  `update_time` int(11) NOT NULL,
  `pub` tinyint(1) default '1',
  `plate` tinyint(1) NOT NULL,
  `item` varchar(11) default NULL,
  PRIMARY KEY  (`id1`), …
Run Code Online (Sandbox Code Playgroud)

mysql database insert

2
推荐指数
1
解决办法
172
查看次数

标签 统计

database ×1

insert ×1

mysql ×1