用一个SQL查询语句查询两个表的数据是否一致,不一致的数据显示出来 疑难问题

我想用一个SQL查询语句查询两个表的数据是否一致,不一致的数据显示出来 (注:这两个表的数据是一样的,不过后来有一个表删除了一些数据,现在想把另一个表没有删除的数据查找出来) 例如:A表和B表,那应该如何写这个sql语句.以name字段为查询字段. 请指教. --假如B删了一些 select A.* from A where not exists(select 1 from B where A.name=B.name)

代码如下:

select * from a 

a

where not 

exists(select * from 

b b 

where a.name=b.name)

    查看表结构

    SQL>DESC emp;

    查询所有列

    SQL>SELECT * FROM emp;

    查询指定列

    SQL>SELECT empmo, ename, mgr FROM emp;

    SQL>SELECT DISTINCT mgr FROM emp; 只显示结果不同的项

    查询指定行

    SQL>SELECT * FROM emp WHERE job='CLERK';

结构化查询语言(英文简称:SQL)是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同 数据库系统,,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-25
name字段在表中是否是主键 如果是的话可以这样写 select * from B where name not in (select name from A) ps: A表为删除过数据的表本回答被网友采纳
第2个回答  2014-03-01
--假如B删了一些 select * from A where name not in (select NAME from B )
第3个回答  2014-03-01
select * from a a where not exists(select * from b b where a.name=b.name)