【mysql练习】A,B两表结构完全一样,其中A中一些数据在B中不存在,用SQL将A表数据更新到B表中
1,创建符合条件的A,B表和数据
create table IF not EXISTS
A (id int auto_increment primary key);
create table IF not EXISTS
B (id int auto_increment primary key);
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into A values();
insert into B values();
insert into B values();
insert into B values();
insert into B values();
select * from A;
select * from B;
2,输出SQL
分析:因为A表比B表大,然后利用left join:left join 是“有左显示”原则:显示A表中存在的全部数据及A,B中都有的数据;A中有、B没有的数据以Null显示。
可以知道,left join,会比较A,B的数据,其中A中有,B中没有以null展示。那么利用这个规则,可以一条SQL写出更新语句:
insert into B select A.id from A left join B on A.id=B.id where B.id is null;
然后查询结果:
最新文章
- Node.js Ubuntu下安装
- Mysql 数据库中所有列名为某个值的 sql 语句
- ES6的Iterator,jquery Fn
- SpringMVC常用注解實例詳解2:@ModelAttribute
- Nginx详解-服务器集群
- Linux命令:修改文件权限命令chmod、chgrp、chown的区别
- 基于安卓高仿how-old.net实现人脸识别估算年龄与性别
- POJ 2533 Longest Ordered Subsequence(LIS模版题)
- Spring配置,JDBC数据源及事务
- 持续集成Jenkins + robot framework + git
- Struts2拦截器配置实例
- Cocos2D场景中对象引用为nil时的判断
- Identity Server 4 - Hybrid Flow - 使用ABAC保护MVC客户端和API资源
- connection holder is null新增解决方案(2018-06-02)
- Python - Python2与Python3的区别、转换与兼容
- kibana6.2.4版本更新x-pack认证
- java学习之—数组的曾删改查
- 【Java】 剑指offer(55-2) 平衡二叉树
- Ubuntu16.04 上安装MySQL5.7
- jquery 学习(一):jQuery 简介
热门文章
- dll帮助类
- 使用EmguCV3.0.0调用摄像头并设置帧率
- SQL 错误 [1105] [HY000]: errCode = 2, detailMessage = select list expression not produced by aggregation output (missing from GROUP BY clause?): ......
- Java把List转成以逗号分隔的字符串
- 谷歌是如何改进 GKE、Cloud Run 的 gVisor 文件系统性能的?
- python_test_5001_Moudle_pandas
- springboot thymeleaf常用标签
- unity 利用相机截图,可以截取UI,保存png格式,可用于签名抠图
- 运行Django项目报错
- 百题计划-3 codeforces 657div2 C. Choosing flowers 贪心+枚举+二分