六.把查询结果去除重复记录
注意:原表数据不会被修改,只是查询结果去重。
去重需要使用一个关键字:distinct
、
例如:
select job,deptno from emp;
| job | deptno |
| CLERK | 20 |
| SALESMAN | 30 |
| SALESMAN | 30 |
| MANAGER | 20 |
| SALESMAN | 30 |
| MANAGER | 30 |
| MANAGER | 10 |
| ANALYST | 20 |
| PRESIDENT| 10 |
| SALESMAN | 30 |
| CLERK | 20 |
| CLERK | 30 |
| ANALYST | 20 |
| CLERK | 10 |
、
正确写法1:
select distinct job from emp;
| job |
| CLERK |
| SALESMAN |
| MANAGER |
| ANALYST |
| PRESIDENT|
错误写法:
select ename,distinct job from emp;
原因:distinct只能出现在所有字段的最前方
正确写法2:
select distinct job,deptno from emp;
、
注意:distinct出现在job,deptno两个字段之前,表示两个字段联合起来去重。
| job | deptno |
| CLERK | 20 |
| SALESMAN | 30 |
| MANAGER | 20 |
| MANAGER | 30 |
| MANAGER | 10 |
| ANALYST | 20 |
| PRESIDENT| 10 |
| CLERK | 30 |
| CLERK | 10 |
、
例2:统计一下工作岗位的数量?
select count(distinct job) from emp;