IT开放社区

SELECT 查询语句筛选重复取唯一值

 SELECT查询语句筛选重复值

一.DISTINCT 子句去重复

    格式:SELECT DISTINCT (指定列)FROM(指定表);

    特性:用于筛选单个列有效

    执行顺序:

          2.SELECT

          1.FROM

SQL> SELECT * FROM emp;
     EMPNO ENAME      JOB        MGR HIREDATE     SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7369 SMITH      CLERK     7902 17-DEC-80     800      20
      7499 ALLEN      SALESMAN  7698 20-FEB-81    1600      300      30
      7521 WARD       SALESMAN  7698 22-FEB-81    1250      500      30
      7566 JONES      MANAGER   7839 02-APR-81    2975      20
      7654 MARTIN     SALESMAN  7698 28-SEP-81    1250      1400     30
      7698 BLAKE      MANAGER   7839 01-MAY-81    2850      30
      7782 CLARK      MANAGER   7839 09-JUN-81    2450      10
      7788 SCOTT      ANALYST   7566 19-APR-87    3000      20
      7839 KING       PRESIDENT      17-NOV-81    5000      10
      7844 TURNER     SALESMAN  7698 08-SEP-81    1500      0        30
      7876 ADAMS      CLERK     7788 23-MAY-87    1100      20
      7900 JAMES      CLERK     7698 03-DEC-81     950      30
      7902 FORD       ANALYST   7566 03-DEC-81    3000      20
      7934 MILLER     CLERK     7782 23-JAN-82    1300      10
14 rows selected.
SQL> SELECT DISTINCT job FROM emp;
JOB
---------
CLERK
SALESMAN
PRESIDENT
MANAGER
ANALYST
SQL>

二.GROUP BY子句分组查询,实现筛选重复值

    格式:SELECT (指定与GROUP BY相同的列)FROM (指定表)GROUP BY(指定列)

    特性:用于筛选单个列有效

    执行顺序:

          3.SELECT

          1.FROM

          2.GROUP BY

SQL> SELECT * FROM emp;
     EMPNO ENAME      JOB        MGR HIREDATE     SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7369 SMITH      CLERK     7902 17-DEC-80     800      20
      7499 ALLEN      SALESMAN  7698 20-FEB-81    1600      300      30
      7521 WARD       SALESMAN  7698 22-FEB-81    1250      500      30
      7566 JONES      MANAGER   7839 02-APR-81    2975      20
      7654 MARTIN     SALESMAN  7698 28-SEP-81    1250      1400     30
      7698 BLAKE      MANAGER   7839 01-MAY-81    2850      30
      7782 CLARK      MANAGER   7839 09-JUN-81    2450      10
      7788 SCOTT      ANALYST   7566 19-APR-87    3000      20
      7839 KING       PRESIDENT      17-NOV-81    5000      10
      7844 TURNER     SALESMAN  7698 08-SEP-81    1500      0        30
      7876 ADAMS      CLERK     7788 23-MAY-87    1100      20
      7900 JAMES      CLERK     7698 03-DEC-81     950      30
      7902 FORD       ANALYST   7566 03-DEC-81    3000      20
      7934 MILLER     CLERK     7782 23-JAN-82    1300      10
14 rows selected.
SQL> SELECT job FROM emp GROUP BY job;
JOB
---------
CLERK
SALESMAN
PRESIDENT
MANAGER
ANALYST
SQL>


相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类
最新文章
    随机文章
      站点信息
      • 文章总数:106
      • 页面总数:0
      • 分类总数:8
      • 标签总数:0
      • 评论总数:0
      • 浏览总数:15966
      DBA联盟
      DBA导师

      BlogPowerBy Z-BlogPHP 1.5 Zero ;Theme By 爱墙纸

      IT开放社区:京ICP备13044647号.初创于Oracle DBA实战班.邮箱:admin@itkaifang.com

      分享:

      支付宝

      微信