过滤和排序·下

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了过滤和排序·下相关的知识,希望对你有一定的参考价值。

SQL> /*
SQL> sql 优化2:
SQL>     where条件优化:
SQL>          执行的顺序是从右往左去执行 where deptno = 10 and ename like ‘%a%‘; or
SQL> */
SQL> -- 排序 order by
SQL> -- 根据员工的sal 排序
SQL> select *
  2  from emp
  3  order by sal;

     EMPNO ENAME                JOB                       MGR HIREDATE         
---------- -------------------- ------------------ ---------- --------------   
       SAL       COMM     DEPTNO                                               
---------- ---------- ----------                                               
      7369 SMITH                CLERK                    7902 17-12月-80       
       800                    20                                               
                                                                               
      7900 JAMES                CLERK                    7698 03-12月-81       
       950                    30                                               
                                                                               
      7876 ADAMS                CLERK                    7788 23-5月 -87       
      1100                    20                                               
                                                                               

     EMPNO ENAME                JOB                       MGR HIREDATE         
---------- -------------------- ------------------ ---------- --------------   
       SAL       COMM     DEPTNO                                               
---------- ---------- ----------                                               
      7521 WARD                 SALESMAN                 7698 22-2月 -81       
      1250        500         30                                               
                                                                               
      7654 MARTIN               SALESMAN                 7698 28-9月 -81       
      1250       1400         30                                               
                                                                               
      7934 MILLER               CLERK                    7782 23-1月 -82       
      1300                    10                                               
                                                                               

     EMPNO ENAME                JOB                       MGR HIREDATE         
---------- -------------------- ------------------ ---------- --------------   
       SAL       COMM     DEPTNO                                               
---------- ---------- ----------                                               
      7844 TURNER               SALESMAN                 7698 08-9月 -81       
      1500          0         30                                               
                                                                               
      7499 ALLEN                SALESMAN                 7698 20-2月 -81       
      1600        300         30                                               
                                                                               
      7782 CLARK                MANAGER                  7839 09-6月 -81       
      2450                    10                                               
                                                                               

     EMPNO ENAME                JOB                       MGR HIREDATE         
---------- -------------------- ------------------ ---------- --------------   
       SAL       COMM     DEPTNO                                               
---------- ---------- ----------                                               
      7698 BLAKE                MANAGER                  7839 01-5月 -81       
      2850                    30                                               
                                                                               
      7566 JONES                MANAGER                  7839 02-4月 -81       
      2975                    20                                               
                                                                               
      7788 SCOTT                ANALYST                  7566 19-4月 -87       
      3000                    20                                               
                                                                               

     EMPNO ENAME                JOB                       MGR HIREDATE         
---------- -------------------- ------------------ ---------- --------------   
       SAL       COMM     DEPTNO                                               
---------- ---------- ----------                                               
      7902 FORD                 ANALYST                  7566 03-12月-81       
      3000                    20                                               
                                                                               
      7839 KING                 PRESIDENT                     17-11月-81       
      5000                    10                                               
                                                                               

已选择14行。

SQL> set linesize 200;
SQL> /

     EMPNO ENAME                JOB                       MGR HIREDATE              SAL       COMM     DEPTNO                                                                                          
---------- -------------------- ------------------ ---------- -------------- ---------- ---------- ----------                                                                                          
      7369 SMITH                CLERK                    7902 17-12月-80            800                    20                                                                                          
      7900 JAMES                CLERK                    7698 03-12月-81            950                    30                                                                                          
      7876 ADAMS                CLERK                    7788 23-5月 -87           1100                    20                                                                                          
      7521 WARD                 SALESMAN                 7698 22-2月 -81           1250        500         30                                                                                          
      7654 MARTIN               SALESMAN                 7698 28-9月 -81           1250       1400         30                                                                                          
      7934 MILLER               CLERK                    7782 23-1月 -82           1300                    10                                                                                          
      7844 TURNER               SALESMAN                 7698 08-9月 -81           1500          0         30                                                                                          
      7499 ALLEN                SALESMAN                 7698 20-2月 -81           1600        300         30                                                                                          
      7782 CLARK                MANAGER                  7839 09-6月 -81           2450                    10                                                                                          
      7698 BLAKE                MANAGER                  7839 01-5月 -81           2850                    30                                                                                          
      7566 JONES                MANAGER                  7839 02-4月 -81           2975                    20                                                                                          

     EMPNO ENAME                JOB                       MGR HIREDATE              SAL       COMM     DEPTNO                                                                                          
---------- -------------------- ------------------ ---------- -------------- ---------- ---------- ----------                                                                                          
      7788 SCOTT                ANALYST                  7566 19-4月 -87           3000                    20                                                                                          
      7902 FORD                 ANALYST                  7566 03-12月-81           3000                    20                                                                                          
      7839 KING                 PRESIDENT                     17-11月-81           5000                    10                                                                                          

已选择14行。

SQL> --默认情况下oarcle是按照升序排列
SQL> select *
  2  from emp
  3  order by sal desc;

     EMPNO ENAME                JOB                       MGR HIREDATE              SAL       COMM     DEPTNO                                                                                          
---------- -------------------- ------------------ ---------- -------------- ---------- ---------- ----------                                                                                          
      7839 KING                 PRESIDENT                     17-11月-81           5000                    10                                                                                          
      7902 FORD                 ANALYST                  7566 03-12月-81           3000                    20                                                                                          
      7788 SCOTT                ANALYST                  7566 19-4月 -87           3000                    20                                                                                          
      7566 JONES                MANAGER                  7839 02-4月 -81           2975                    20                                                                                          
      7698 BLAKE                MANAGER                  7839 01-5月 -81           2850                    30                                                                                          
      7782 CLARK                MANAGER                  7839 09-6月 -81           2450                    10                                                                                          
      7499 ALLEN                SALESMAN                 7698 20-2月 -81           1600        300         30                                                                                          
      7844 TURNER               SALESMAN                 7698 08-9月 -81           1500          0         30                                                                                          
      7934 MILLER               CLERK                    7782 23-1月 -82           1300                    10                                                                                          
      7521 WARD                 SALESMAN                 7698 22-2月 -81           1250        500         30                                                                                          
      7654 MARTIN               SALESMAN                 7698 28-9月 -81           1250       1400         30                                                                                          

     EMPNO ENAME                JOB                       MGR HIREDATE              SAL       COMM     DEPTNO                                                                                          
---------- -------------------- ------------------ ---------- -------------- ---------- ---------- ----------                                                                                          
      7876 ADAMS                CLERK                    7788 23-5月 -87           1100                    20                                                                                          
      7900 JAMES                CLERK                    7698 03-12月-81            950                    30                                                                                          
      7369 SMITH                CLERK                    7902 17-12月-80            800                    20                                                                                          

已选择14行。

SQL> select *
  2  from emp
  3  order by sal asc;

     EMPNO ENAME                JOB                       MGR HIREDATE              SAL       COMM     DEPTNO                                                                                          
---------- -------------------- ------------------ ---------- -------------- ---------- ---------- ----------                                                                                          
      7369 SMITH                CLERK                    7902 17-12月-80            800                    20                                                                                          
      7900 JAMES                CLERK                    7698 03-12月-81            950                    30                                                                                          
      7876 ADAMS                CLERK                    7788 23-5月 -87           1100                    20                                                                                          
      7521 WARD                 SALESMAN                 7698 22-2月 -81           1250        500         30                                                                                          
      7654 MARTIN               SALESMAN                 7698 28-9月 -81           1250       1400         30                                                                                          
      7934 MILLER               CLERK                    7782 23-1月 -82           1300                    10                                                                                          
      7844 TURNER         &n

以上是关于过滤和排序·下的主要内容,如果未能解决你的问题,请参考以下文章

基础排序算法···插入排序

3.13·········冒泡排序

·排序

如何过滤/排序/排序对象模型节点?

基于快速排序的数组划分 · Partition Array

hihoCoder 1174 : 拓扑排序·一