利用SQL SERVER对比两张表的数据一致性
CREATE TABLE [dbo].[A](
[ID] [int] NULL,
[NAME] [varchar](50) NULL,
[SEX] [varchar](50) NULL,
[AGE] [int] NULL
) ON [PRIMARY];
CREATE TABLE [dbo].[B](
[ID] [int] NULL,
[NAME] [varchar](50) NULL,
[SEX] [varchar](50) NULL,
[AGE] [int] NULL
) ON [PRIMARY];
INSERT [dbo].[B] ([ID], [NAME], [SEX], [AGE]) VALUES (1, N'曹操', N'男', 50)
INSERT [dbo].[B] ([ID], [NAME], [SEX], [AGE]) VALUES (2, N'刘备', N'男', 45)
INSERT [dbo].[B] ([ID], [NAME], [SEX], [AGE]) VALUES (3, N'赵云', N'男', 32)
INSERT [dbo].[B] ([ID], [NAME], [SEX], [AGE]) VALUES (4, N'大乔', N'女', 20)
INSERT [dbo].[B] ([ID], [NAME], [SEX], [AGE]) VALUES (5, N'关羽', N'男', 43)
INSERT [dbo].[A] ([ID], [NAME], [SEX], [AGE]) VALUES (1, N'曹操', N'男', 50)
INSERT [dbo].[A] ([ID], [NAME], [SEX], [AGE]) VALUES (2, N'刘备', N'男', 45)
INSERT [dbo].[A] ([ID], [NAME], [SEX], [AGE]) VALUES (3, N'赵云', N'男', 30)
INSERT [dbo].[A] ([ID], [NAME], [SEX], [AGE]) VALUES (4, N'小乔', N'女', 20)
/*
EXCEPT是指在第一个集合中存在,但是不存在于第二个集合中的数据。
INTERSECT是指在两个集合中都存在的数据。
*/
select * from A
except
select * from b;
结果:
3 赵云 男 30
4 小乔 女 20
select * from b
except
select * from A;
结果:
3 赵云 男 32
4 大乔 女 20
5 关羽 男 43
配合一下使用MYSQL的链接服务器:
select * from A
except
SELECT * FROM OPENQUERY(CloudMysql,'SELECT * FROM TESTDB.B') AS B
4 小乔2 女 20
5 貂蝉 女 18
SELECT * FROM OPENQUERY(CloudMysql,'SELECT * FROM TESTDB.B') AS B
except
select * from A
3 赵云 男 30
4 小乔 女 20
继续优化,创建视图:
CREATE VIEW V_B /*创建视图*/
AS
SELECT * FROM OPENQUERY(CloudMysql,'SELECT * FROM TESTDB.B') AS B
SELECT * FROM V_B
except
select * from A
利用SQL SERVER对比两张表的数据一致性的更多相关文章
- 利用pymysql同时修改两张表的数据
使用pymysql操作数据库中相关联的两张表需求:两张表中分别有一个字段是json格式,需要往json中再插入一个属性值’container_cloud’=’fasle’. import pymysq ...
- SQL Server 用一张表的数据更新另一张表的数据(转载)
文章一:SQL Server中如何基于一个表的数据更新另一个表的对应数据的SQL语句脚本 https://codedefault.com/2017/sql-server-update-from-a-s ...
- SQL Server对比两字段的相似度(函数算法)
相似度函数 概述 比较两个字段的相似度 最近有人问到关于两个字段求相似度的函数,所以就写了一篇关于相似度的函数,分别是“简单的模糊匹配”,“顺序匹配”,“一对一位置匹配”.在平时的这种函数 ...
- SQL Server对比两字符串的相似度(函数算法)
一.概述 最近有人问到关于两个字符串求相似度的函数,所以就写了本篇文章,分别是“简单的模糊匹配”,“顺序匹配”,“一对一位置匹配”.在平时的这种函数可能会需要用到,业务需求不一样,这里只给出参照 ...
- 数据库SQL server 删除一张表中的重复记录
--建立一张表 create table cat( catId int, catName varchar(40) ) --将下边的插入语句,多执行几次. insert into catvalues(1 ...
- Oracle 对比两张表不一样 的数据
闲来无事,更一片博客,前几天有一个项目中有一个需求,用户通过excel导入数据,由于是通用的导入,所以导入的列的类型都为varchar,所以需要建一张中间表,使其列都为varchar类型,然后通过存储 ...
- SQL SERVER获取某张表创建的索引
1 SELECT 索引名称=a.name 2 ,表名=c.name 3 ,索引字段名=d.name 4 ,索引字段位置=d.colid 5 FROM sysindexes a 6 JOIN sysin ...
- sql server 更新两个表的某个字段
--临时表 create table tmp_cup ( a varchar(20), b varchar(50), c varchar(20) ) select * from t_customer ...
- 关于跨DB增量(增、改)同步两张表的数据小技巧
有些场景下,需要隔离不同的DB,彼此DB之间不能互相访问,但实际的业务场景又需要从A DB访问B DB的情形,这时怎么办?我认为有如下常规的三种方案: 1.双方提供RESET API,需要访问不同DB ...
随机推荐
- POI 2018.10.27
[POI2015]LOG 维护一个长度为n的序列,一开始都是0,支持以下两种操作:1.U k a 将序列中第k个数修改为a.2.Z c s 在这个序列上,每次选出c个正数,并将它们都减去1,询问能否进 ...
- scanf函数用法小记
By francis_hao Aug 26,2017 scanf – 输入格式转换 概述 #include <stdio.h>int scanf(const char *fo ...
- WizTools.org RESTClient 启动方法
关于 WizTools.org RESTClient的使用 今天分享一个很好用的测试service的工具,很好用 提供两种方法使用这个东东. 第一种方法 通过cmd命令窗口. (1)cd C:\Use ...
- HDU 3507 斜率优化dp
Print Article Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)To ...
- [LeetCode] 6. ZigZag Conversion ☆☆☆
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...
- PHP日期时间操作
一.设置时区 date_default_timezone_set('PRC'); 二.获取当前时间的 Unix 时间戳(格林威治时间 1970 年 1 月 1 日 00:00:00到当前时间的秒数)和 ...
- word2vec Explained: deriving Mikolov et al.'s negative-sampling word-embedding method
最近接到任务研究word2vec,感觉网络上关于这个的资料层次不齐,总感觉解释的都没有那么完善.或许就连作者本人也不是非常清楚为什么他的模型好使.论文中提到的negtive sampling给了我很大 ...
- java -classpath or -cp 的设置和解释
classpath is a parameter—set either on the command-line, or through an environment variable—that tel ...
- 省队集训Day1 睡觉困难综合征
传送门:https://www.luogu.org/problem/show?pid=3613 [题解] 按二进制位分开,对于每一位,用“起床困难综合征”的方法贪心做. 写棵LCT,维护正反两种权值, ...
- mac系统用docker安装oracle数据库
oracle没有mac可用的版本,最好的办法是通过docker安装 一.下载docker 1.通过brew下载 brew cask install docker 2.手动下载(需要vpn) https ...