SQL语句理解 select * from B where (select count(1) as num from A where A.ID = B.ID) = 0

2025-01-20 21:10:13
推荐回答(4个)
回答1:

假设个例子吧:A表
id 姓名 性别
00 aa 女
01 bb 女
02 cc 女

B表
id 姓名 性别
00 aa 女
02 cc 女
03 dd 男
select * from B是执行B表,
当执行id=‘00’时 ,因为select count(1) as num from A where A.ID = B.ID 不等于0 所以运行结果没有第一行id=‘00’,
当执行id=‘02’时,因为select count(1) as num from A where A.ID = B.ID 不等于0 所以运行结果没有第二行id=‘02’,
当执行id= ‘03’时,因为select count(1) as num from A where A.ID = B.ID 的结果等于0 ,符合条件,所以运行结果会有第三行。
运行结果为:
id 姓名 性别
03 dd 男
所以:可以在B表中 排除A表的数据。

回答2:

就是统计B表和A表用ID连接的行数,子查询的行数=0,就可以实现从B表中排除A表数据。

一、SQL语句简介:SQL 全名是结构化查询语言(Structured Query Language),是用于数据库中的标准数据查询语言,IBM 公司最早使用在其开发的数据库系统中。1986年10月,美国国家标准学会(ANSI) 对 SQL 进行规范后,以此作为关系式数据库管理系统的标准语言 (ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对 SQL 规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。

二、SQL功能:

1、数据定义功能:SQL的数据定义功能通过数据定义语言(Data Definition Language,DDL)实现,他用来定义数据库的逻辑结构,包括定义基表、视图和索引。基本的DDL包括三类,即定义、修改和删除,分别对应CREATE、ALTER和DROP三条语句。

2、 数据查询功能:SQL的数据查询功能通过数据查询语言(Data Query Language,DQL)实现,它用来对数据库中的各种数据对象进行查询,虽然近包括查询一种操作(SELECT语句),但在SQL语言中,它是使用频率最高的语句。查询语句可以有讯多自救组成,使用不同的语句便可以进行查询、统计、分组、排序等操作,从而实现选择、投影和连接等运算功能,以获得用户所需的数据信息。

3、 数据操作功能:SQL的数据操纵功能通过数据操作语句(Data Manipulation Language,DML)实现,它用于改变数据库中的数据,数据更新包括插入、删除和修改三种操作,分别对应INSERT、DELETE和UPDATE三条语句。

4、数据控制功能:数据库的控制值数据库的安全性和完整性控制。SQL的数据控制功能通过数据控制语言(Data Control Language,DCL)实现,它包括对基表和视图的授权、完整性规则的描述以及事物开始和结束等控制语句。

回答3:

子查询中select count(1) as num from A where A.ID = B.ID
就是统计B表和A表用ID连接的行数
子查询的行数=0,就可以实现从B表中排除A表数据

回答4:

mm,count(1) as cc,avg(money) as av