比如a表,三个字段(产权证号,产权人,坐落),表B也是这三个字段(产权证号,产权人,坐落),然后表a里有十条数据,表B里有3条数据。那怎么通过脚本,把表a里的除了表B里的3条数据之外的7条数据查出来呢?
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
2、其次在该界面中,点击“新建查询”按钮。
3、继续在该界面中,输入查询两个表中不同的数据的SQL语句。
4、再者在该界面中,点击“执行”按钮。
5、最后在该界面中,显示两个表中不同的数据。
使用except函数,select * from B where (select count(1) from A where A.ID = B.ID) = 0.
方法一(推荐)
WITH C AS ( SELECT Name
FROM ConsumerCouponApply A
WHERE NOT EXISTS ( SELECT 1
FROM ConsumerCouponApply B
WHERE B.Name = A.Name
GROUP BY B.Name )
GROUP BY A.Name
)
SELECT COUNT(1)
FROM C
方法二
WITH C AS ( SELECT A.Name
FROM ConsumerCouponApply A
GROUP BY A.Name
EXCEPT
SELECT B.Name
FROM ConsumerCouponApply B
GROUP BY B.Name
)
SELECT COUNT(1)
FROM C
方法三
SELECT COUNT(A.Name)
FROM ConsumerCouponApply A
LEFT JOIN ConsumerCouponApply B ON A.Name = B.Name
WHERE B.ID IS NULL
扩展资料:
高级查询运算词:
A: UNION 运算符:
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个
结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行
不是来自 TABLE1 就是来自 TABLE2。
B: EXCEPT 运算符
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
C: INTERSECT 运算符
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当
ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。
注:使用运算词的几个查询结果行必须是一致的。
假设两个表都有唯一键UserID
可以这么写(使用全连接【full outer join】:完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。)
selectSQL怎么查询两个表中不同的数据?
1、首先,打开sql查询器,连接上相应的数据库表,以查询c1表和c2表的name字段不同为例。2、点击“查询”按钮,输入:select c1.`name` from c1 left join c2 on c1.`name`=c2.`name` where c2.`name` is null union select c2.`name` from c2 left join c1 on c1.`name`=c2.`name...
SQL怎么查询两个表中不同的数据
1、首先在桌面上,点击“Management Studio”图标。2、其次在该界面中,点击“新建查询”按钮。3、继续在该界面中,输入查询两个表中不同的数据的SQL语句。4、再者在该界面中,点击“执行”按钮。5、最后在该界面中,显示两个表中不同的数据。
SQL 查找两表中不同的数据
使用except函数,select * from B where (select count(1) from A where A.ID = B.ID) = 0.方法一(推荐)WITH C AS ( SELECT Name FROM ConsumerCouponApply A WHERE NOT EXISTS ( SELECT 1 FROM ConsumerCouponApply B WHERE B.Name = A.Name GROUP BY B.Name )GROUP...
SQL查询两个表相同的两个字段里不同的数据有哪些
1、首先得出两个表的并集 注:full join :存在匹配,匹配显示;同时,将各个表中不匹配的数据与空数据行匹配进行显示。可以看成是左外连接与右外连接的并集。图中结果左侧两列为TABLE1,右侧两列为TABLE2。前三条记录表示TABLE1和TABLE2都有的数据。TABLE1项为NULL的记录说明TABLE2中无相同项。同理...
sql问题:在两个相同的表中找出不同的记录.
select * from a where not exists(select * from b where a.col_a=b.col_a and a.col_b=b.col_b) union select * from b where not exists(select * from a where a.col_a=b.col_a and a.col_b=b.col_b)以上得出两表中所有不同记录(a表中第三条,b表中3、4条)...
查询两个相同表中不同记录,这样的SQL语句怎么写
请参考下列例子:假设A、B两表结构一样,选出两张表中id字段互不相同的记录 select * from A where not exists (select 1 from B where B.id=A.id)union all select * from B where not exists (select 1 from A where A.id=B.id);说明:第一个子查询选出A表中未出现于B表里的记录...
ACCESS中有2个表,想找出2个表不一样的数据,SQL查询怎么写?
3、SELECT t2.* FROM t2 LEFT JOIN t1 ON t2.id=t1.id WHERE t1.id is null 三种方法都得不到所想要的不同内容的结果(VB编程,语法正确,结果为空),崩溃了。我有表1=Standard_Data1 ,表2=Standard_Data2,两个表里面只有1列数据为MSISDN,下面SQL语句没法找到不同的内容。select * ...
MySQL双表查询如何在两个表中检索数据mysql中两表查询
MySQL双表查询是实现复杂查询的一种常见方式,它可以在多个表中查询和检索数据。在实际项目中,深入掌握MySQL双表查询技术,能够为数据查询分析提供强有力的支持。在查询时,需要确保表之间有正确且唯一的关联键,同时要灵活使用MySQL SQL语句中的关键字JOIN、INNER JOIN、LEFT JOIN、RIGHT JOIN等等,以实现...
sql 两张表怎么查询不重复的记录
sql 查询不重复的记录 可以使用 having count group by 组合 先把不重复数据的id查询出来 通过count()计算 只有数目为1的才是不重复的数据 select b.* from table b where b.id in(select a.id from table a group by a.name having count(a.id) <2)\/\/其中 name重复的数据的列名 ...
SQL语句:对比两张表的数据并筛选出数据不同的
SQL语句对比两张表的数据并筛选出数据不同的公式如下:select A.* from A, Bwhere A.A1=B.B1 -- 相同主键,做表连接.and A.A2 <> B.B2 -- 条件:A2不等于B2.and A.A3 <> B.B3 -- 条件:A3不等于B3.知识延展:sql 语句是对数据库进行操作的一种语言。结构化查询语言(Structured ...