查询

  • 全部查询(尽管方便,但不推荐使用,因为会将整个表都查询一次,造成开销浪费)

    1. SELECT * FROM 表名;
  • 部分查询(指定字段查询,或者理解为按列查询,多个列之间以逗号分隔)

    1. SELECT 字段1, 字段2 FROM 表名;
  • 别名查询 ( 将数据库中的英文通过取别名如中文形式进行展示,方便观看和处理查询的数据,AS 可以省略不写)

    1. SELECT 字段1 AS 别名, 字段2 别名 FROM 表名;
  • 综合练习 ```plsql — 对 EMP 表查询 SELECT * FROM EMP;

— 显示部分列 SELECT EMPNO, ENAME, SAL FROM EMP;

— 别名查询 SELECT EMPNO AS 编号, ENAME ‘姓名’ , SAL 薪资, JOB “工作 岗位” FROM EMP ;

  1. > 尽管以中文显示出来,但是表中数据不会做任何名称修改,因为查询只是对数据的展示。别名查询中 AS 可以省略不写,可以单引号或者双引号,一般引号用于别名中间有特殊符号,如案例中的 “工作 岗位” 的空格
  2. <a name="i6zm5"></a>
  3. ### 去重
  4. - **DISTINCT** - 查询指定列且结果不出现重复数据
  5. ```plsql
  6. SELECT DISTINCT 字段名, 字段名 FROM 表名;
  1. -- 单列去重
  2. SELECT DISTINCT JOB FROM EMP;
  3. -- 多列去重
  4. SELECT DISTINCT JOB, DEPTNO FROM EMP;

多列去重时,DISTINCT 会对后面所有列组合去重

排序

  • ORDER BY

    1. SELECT * FROM 表名 ORDER BY 条件 ;
  • 升序降序

    1. SELECT * FROM 表名 WHERE 条件 ORDER BY 字段名 [ASC|DESC]

    ASC:升序,默认是升序可以不写;DESC:降序

  1. -- 按工作从低到高
  2. SELECT * FROM EMP ORDER BY SAL;
  3. -- 按工资从高到低
  4. SELECT * FROM EMP ORDER BY SAL DESC;
  5. -- 按工资从低到高,部门编号从高到低
  6. SELECT * FROM EMP ORDER BY SAL ASC, DEPTNO DESC ;

第三个案例发现当薪资相同时,部门编号是降序展示