子查询返回有单行,多行和null值:适用于单行子查询的比较运算符是=,>,>=,<,<=<>和!=.适用于多行子查询的比较运算符是in,not in,any和any.在子查询中不可回避的是会返回null值,下面就这个问题来讨论一下. 在单行子查询中 SQL> select last_name,department_id from employees where department_id is null; LAST_NAME DEPARTMENT_ID -----
联合查询 所谓的联合查询就是将满足条件的结果进行拼接在同一张表中. 基本语法: select */字段 from 数据表1 union [all | distinct] select */字段 from 数据表2; 特别说明:使用union联合查询必须有一个前提,每个表读取的字段数必须是一致的 union联合查询默认是去重的. union all :在数据联合时保存所有数据,示例代码: union distinct :在数据联合时去重所有重复的数据,示例代码: union的意义:主要用于大数
where 子查询主要功能是控制数据行的,返回结果一般都是单行单列.多行单列.单行多列数据 单行单列 SELECT * FROM emp WHERE hiredate=( SELECT MIN(hiredate) FROM emp) ; 多行单列 (使用不多) SELECT * FROM emp WHERE (sal,job)=( SELECT sal,job FROM emp WHERE ename='SCOTT') AND ename<>'SCOTT' ; 多行单列 使用三个判断符号:IN
子查询 子查询是一种常用计算机语言SELECT-SQL语言中嵌套查询下层的程序模块.当一个查询是另一个查询的条件时,称之为子查询. # 子查询的用法 # 在字段 select (select cName from courses where cNo = cID) as '课程名称', count(elNo) from elogs GROUP BY cID; # 在表 select * from courses where exists( select * from (select sum(cCr