请教怎么用SQL对比两个表中身份证号字段不一样的数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教怎么用SQL对比两个表中身份证号字段不一样的数据相关的知识,希望对你有一定的参考价值。

比如这两张图片中的表,怎么让B列中的身份证号与另外一个表F列对比,筛选出B列身份证号与另一个表F不一致的,并显示整个不一致的数据

2中思路
第一种 查询出2个表里数据一致的 然后 不在第二个表里的数据
select*from b
where 身份证号 not in
(select 身份证号 from a,b
where a.身份证号=b.身份证号)
数据多的话速度会很慢
第二种 已表2为主表进行左关联,然后表1里字段为空的就是不一致的数据
select * from (select b.*,a.身份证号 as '标示' from b left join a on a.身份证号=b.身份证号) a
where 标示 is not null
参考技术A 要多少费用

请教:SQL同一数据库中,两个查询结果数据类型不同时的union all 合并问题

请教:查询结果一:select 表1.字段1, 表1.字段2, 表1.字段3,from 表1 where。。。
查询结果二:select 表2.字段1, 表2.字段2, 表2.字段3,from 表2 where。。。
查询结果一中的类型全为varchar型,查询结果二中的类型:表2.字段1,其余为Numeric,
用union all怎样合并查询?

参考技术A select CAST(表2.字段1 AS VARCHAR(n), 表2.字段2, 表2.字段3,from 表2 where。。。

CAST(表2.字段1 AS VARCHAR(n) n的大小和表1.字段1的长度一致。追问

不好意思,写少了个字:
请教:查询结果一:select 表1.字段1, 表1.字段2, 表1.字段3,from 表1 where。。。
查询结果二:select 表2.字段1, 表2.字段2, 表2.字段3,from 表2 where。。。
查询结果一中的类型全为varchar型,查询结果二中的类型:表2.字段1为varchar型,其余表2.字段2/字段3为Numeric,
用union all怎样合并查询?

本回答被提问者和网友采纳
参考技术B union all不支持不同类型合并,尝试类型转化为相同的吧 参考技术C 通过cast(表2.字段2 as varchar)转换表2.字段2为varchar格式

以上是关于请教怎么用SQL对比两个表中身份证号字段不一样的数据的主要内容,如果未能解决你的问题,请参考以下文章

怎么用SQL比对两表

如何在数据库中利用sql从18位身份证号中截取出生日期,身份证号在reader表中

excel中有两个表,找出A表中不重复8表的身份证号,我的A表和B表的数据大多还不相同

怎么用SQL语句同步两个表中的字段值?

sql中判断身份证号码的出生年月是不是正确合法

SQL由身份证号计算出生日期和年龄