Oracle过滤与排序
SQL> --查詢部門號為10的員工信息
SQL> select *
? 2? from emp
? 3? where deptno=10;
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7782 CLARK?????????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
已選擇3行。
SQL> --查詢名字叫KING的員工信息
SQL> select *
? 2? from emp
? 3? where ename='king';
未選定行
SQL> ed
已寫入 file afiedt.buf
? 1? select *
? 2? from emp
? 3* where ename='KING'
SQL> /
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
已選擇 1 行。
SQL> --日期:格式問題
SQL> --查詢入職時間是1981-11-17的員工信息
SQL> select *
? 2? from emp
? 3? where hiredate='1981-11-17';
where hiredate='1981-11-17'
?????????????? *
第 3 行出現錯誤:
ORA-01861: 文字與格式字符串不匹配
SQL> --通過兩種方式得知系統默認的日期格式:
SQL> --1. sysdate
SQL> select sysdate from dual;
SYSDATE????????????????????????????????????????????????????????????????????????????????????????????????????????????????
--------------?????????????????????????????????????????????????????????????????????????????????????????????????????????
11-6月 -11?????????????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇 1 行。
SQL> select *
? 2? from emp
? 3? where hiredate='17-11月-81';
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
已選擇 1 行。
SQL> --2. 通過查詢v$nls_parameters: Oracle提供的一個數據字典,包含一些配置的參數信息
SQL> select * from v$nls_parameters;
PARAMETER??????????????????????????????????????????????????????????????????????????????????????????????????????????????
----------------------------------------------------------------???????????????????????????????????????????????????????
VALUE??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
----------------------------------------------------------------???????????????????????????????????????????????????????
NLS_LANGUAGE???????????????????????????????????????????????????????????????????????????????????????????????????????????
SIMPLIFIED CHINESE?????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_TERRITORY??????????????????????????????????????????????????????????????????????????????????????????????????????????
CHINA??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_CURRENCY???????????????????????????????????????????????????????????????????????????????????????????????????????????
¥?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_ISO_CURRENCY???????????????????????????????????????????????????????????????????????????????????????????????????????
CHINA??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_NUMERIC_CHARACTERS?????????????????????????????????????????????????????????????????????????????????????????????????
.,?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_CALENDAR???????????????????????????????????????????????????????????????????????????????????????????????????????????
GREGORIAN??????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_DATE_FORMAT????????????????????????????????????????????????????????????????????????????????????????????????????????
DD-MON-RR??????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_DATE_LANGUAGE??????????????????????????????????????????????????????????????????????????????????????????????????????
SIMPLIFIED CHINESE?????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_CHARACTERSET???????????????????????????????????????????????????????????????????????????????????????????????????????
ZHS16GBK???????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_SORT???????????????????????????????????????????????????????????????????????????????????????????????????????????????
BINARY?????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_TIME_FORMAT????????????????????????????????????????????????????????????????????????????????????????????????????????
HH.MI.SSXFF AM?????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_TIMESTAMP_FORMAT???????????????????????????????????????????????????????????????????????????????????????????????????
DD-MON-RR HH.MI.SSXFF AM???????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_TIME_TZ_FORMAT?????????????????????????????????????????????????????????????????????????????????????????????????????
HH.MI.SSXFF AM TZR?????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_TIMESTAMP_TZ_FORMAT????????????????????????????????????????????????????????????????????????????????????????????????
DD-MON-RR HH.MI.SSXFF AM TZR???????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_DUAL_CURRENCY??????????????????????????????????????????????????????????????????????????????????????????????????????
¥?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_NCHAR_CHARACTERSET?????????????????????????????????????????????????????????????????????????????????????????????????
AL16UTF16??????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_COMP???????????????????????????????????????????????????????????????????????????????????????????????????????????????
BINARY?????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_LENGTH_SEMANTICS???????????????????????????????????????????????????????????????????????????????????????????????????
BYTE???????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_NCHAR_CONV_EXCP????????????????????????????????????????????????????????????????????????????????????????????????????
PARAMETER??????????????????????????????????????????????????????????????????????????????????????????????????????????????
----------------------------------------------------------------???????????????????????????????????????????????????????
VALUE??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
----------------------------------------------------------------???????????????????????????????????????????????????????
FALSE??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇19行。
SQL> col parameter for a20
SQL> /
PARAMETER??????????? VALUE?????????????????????????????????????????????????????????????????????????????????????????????
-------------------- ----------------------------------------------------------------??????????????????????????????????
NLS_LANGUAGE???????? SIMPLIFIED CHINESE????????????????????????????????????????????????????????????????????????????????
NLS_TERRITORY??????? CHINA?????????????????????????????????????????????????????????????????????????????????????????????
NLS_CURRENCY???????? ¥????????????????????????????????????????????????????????????????????????????????????????????????
NLS_ISO_CURRENCY???? CHINA?????????????????????????????????????????????????????????????????????????????????????????????
NLS_NUMERIC_CHARACTE .,????????????????????????????????????????????????????????????????????????????????????????????????
RS?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_CALENDAR???????? GREGORIAN?????????????????????????????????????????????????????????????????????????????????????????
NLS_DATE_FORMAT????? DD-MON-RR?????????????????????????????????????????????????????????????????????????????????????????
NLS_DATE_LANGUAGE??? SIMPLIFIED CHINESE????????????????????????????????????????????????????????????????????????????????
NLS_CHARACTERSET???? ZHS16GBK??????????????????????????????????????????????????????????????????????????????????????????
NLS_SORT???????????? BINARY????????????????????????????????????????????????????????????????????????????????????????????
NLS_TIME_FORMAT????? HH.MI.SSXFF AM????????????????????????????????????????????????????????????????????????????????????
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM??????????????????????????????????????????????????????????????????????????
NLS_TIME_TZ_FORMAT?? HH.MI.SSXFF AM TZR????????????????????????????????????????????????????????????????????????????????
NLS_TIMESTAMP_TZ_FOR DD-MON-RR HH.MI.SSXFF AM TZR??????????????????????????????????????????????????????????????????????
MAT????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_DUAL_CURRENCY??? ¥????????????????????????????????????????????????????????????????????????????????????????????????
NLS_NCHAR_CHARACTERS AL16UTF16?????????????????????????????????????????????????????????????????????????????????????????
ET?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_COMP???????????? BINARY????????????????????????????????????????????????????????????????????????????????????????????
NLS_LENGTH_SEMANTICS BYTE??????????????????????????????????????????????????????????????????????????????????????????????
NLS_NCHAR_CONV_EXCP? FALSE?????????????????????????????????????????????????????????????????????????????????????????????
已選擇19行。
SQL> --可以使用函數來對日期進行轉換
SQL> select * from emp;
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7566 JONES?????????? MANAGER???????? 7839 02-4月 -81????? 2975??????????????????? 20?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7698 BLAKE?????????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30?????????????????????????????
????? 7782 CLARK?????????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10?????????????????????????????
????? 7788 SCOTT?????????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7900 JAMES?????????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30?????????????????????????????
????? 7902 FORD??????????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
已選擇14行。
SQL> --修改系統的日期格式
SQL> alter session set NLS_DATE_FORMAT='yyyy-mm-dd';
會話已更改。
SQL> select * from v$nls_parameters;
PARAMETER??????????? VALUE?????????????????????????????????????????????????????????????????????????????????????????????
-------------------- ----------------------------------------------------------------??????????????????????????????????
NLS_LANGUAGE???????? SIMPLIFIED CHINESE????????????????????????????????????????????????????????????????????????????????
NLS_TERRITORY??????? CHINA?????????????????????????????????????????????????????????????????????????????????????????????
NLS_CURRENCY???????? ¥????????????????????????????????????????????????????????????????????????????????????????????????
NLS_ISO_CURRENCY???? CHINA?????????????????????????????????????????????????????????????????????????????????????????????
NLS_NUMERIC_CHARACTE .,????????????????????????????????????????????????????????????????????????????????????????????????
RS?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_CALENDAR???????? GREGORIAN?????????????????????????????????????????????????????????????????????????????????????????
NLS_DATE_FORMAT????? yyyy-mm-dd????????????????????????????????????????????????????????????????????????????????????????
NLS_DATE_LANGUAGE??? SIMPLIFIED CHINESE????????????????????????????????????????????????????????????????????????????????
NLS_CHARACTERSET???? ZHS16GBK??????????????????????????????????????????????????????????????????????????????????????????
NLS_SORT???????????? BINARY????????????????????????????????????????????????????????????????????????????????????????????
NLS_TIME_FORMAT????? HH.MI.SSXFF AM????????????????????????????????????????????????????????????????????????????????????
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM??????????????????????????????????????????????????????????????????????????
NLS_TIME_TZ_FORMAT?? HH.MI.SSXFF AM TZR????????????????????????????????????????????????????????????????????????????????
NLS_TIMESTAMP_TZ_FOR DD-MON-RR HH.MI.SSXFF AM TZR??????????????????????????????????????????????????????????????????????
MAT????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_DUAL_CURRENCY??? ¥????????????????????????????????????????????????????????????????????????????????????????????????
NLS_NCHAR_CHARACTERS AL16UTF16?????????????????????????????????????????????????????????????????????????????????????????
ET?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
NLS_COMP???????????? BINARY????????????????????????????????????????????????????????????????????????????????????????????
NLS_LENGTH_SEMANTICS BYTE??????????????????????????????????????????????????????????????????????????????????????????????
NLS_NCHAR_CONV_EXCP? FALSE?????????????????????????????????????????????????????????????????????????????????????????????
已選擇19行。
SQL> select *
? 2? from emp
? 3? where hiredate='1980-12-17';
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???? SAL?????? COMM???? DEPTNO?????????????????????????????????
---------- --------------- --------- ---------- ---------- ----- ---------- ----------?????????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 1980-12-17?? 800??????????????????? 20?????????????????????????????????
已選擇 1 行。
SQL> alter session set NLS_DATE_FORMAT='DD-MON-RR';
會話已更改。
SQL> select *
? 2? from emp
? 3? where hiredate=to_date('1980-12-17','yyyy-mm-dd');
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
已選擇 1 行。
SQL> --顯示的性能高于隱式的轉換方式
SQL> --查詢工資在1000~2000之內的員工
SQL> select *
? 2? from emp
? 3? where sal>=1000 and sal<=2000;
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
已選擇6行。
SQL> ed
已寫入 file afiedt.buf
? 1? select *
? 2? from emp
? 3* where sal between 1000 and 2000
SQL> /
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
已選擇6行。
SQL> --between and 注意: 大值在后,小值在前
SQL> ed
已寫入 file afiedt.buf
? 1? select *
? 2? from emp
? 3* where sal between 2000 and 1000
SQL> /
未選定行
SQL> --in(set):集合
SQL> --查詢部門號為10 20 30 的員工信息
SQL> select *
? 2? from emp
? 3? where deptno=10 or deptno=20 or deptno=30;
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7566 JONES?????????? MANAGER???????? 7839 02-4月 -81????? 2975??????????????????? 20?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7698 BLAKE?????????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30?????????????????????????????
????? 7782 CLARK?????????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10?????????????????????????????
????? 7788 SCOTT?????????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7900 JAMES?????????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30?????????????????????????????
????? 7902 FORD??????????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
已選擇14行。
SQL> select *
? 2? from emo
? 3? where deptno in (10,20,30);
from emo
???? *
第 2 行出現錯誤:
ORA-00942: 表或視圖不存在
SQL> 2
? 2* from emo
SQL> c /emo/emp
? 2* from emp
SQL> /
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7566 JONES?????????? MANAGER???????? 7839 02-4月 -81????? 2975??????????????????? 20?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7698 BLAKE?????????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30?????????????????????????????
????? 7782 CLARK?????????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10?????????????????????????????
????? 7788 SCOTT?????????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7900 JAMES?????????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30?????????????????????????????
????? 7902 FORD??????????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
已選擇14行。
SQL> --like:模糊查詢
SQL> --查詢名字以S打頭的員工信息
SQL> select *
? 2? from emp
? 3? where ename like 'S%';
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
????? 7788 SCOTT?????????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20?????????????????????????????
已選擇2行。
SQL> insert into emp(empno,ename) values(1234,'Tom_123');
已創建 1 行。
SQL> commit;
提交完成。
SQL> select * from emp;
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7566 JONES?????????? MANAGER???????? 7839 02-4月 -81????? 2975??????????????????? 20?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7698 BLAKE?????????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30?????????????????????????????
????? 7782 CLARK?????????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10?????????????????????????????
????? 7788 SCOTT?????????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7900 JAMES?????????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30?????????????????????????????
????? 7902 FORD??????????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> --查詢員工名字中含有下劃線的員工信息
SQL> select *
? 2? from emp
? 3? where ename like '%_%';
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7369 SMITH?????????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20?????????????????????????????
????? 7499 ALLEN?????????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7566 JONES?????????? MANAGER???????? 7839 02-4月 -81????? 2975??????????????????? 20?????????????????????????????
????? 7654 MARTIN????????? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30?????????????????????????????
????? 7698 BLAKE?????????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30?????????????????????????????
????? 7782 CLARK?????????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10?????????????????????????????
????? 7788 SCOTT?????????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7844 TURNER????????? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30?????????????????????????????
????? 7876 ADAMS?????????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20?????????????????????????????
????? 7900 JAMES?????????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30?????????????????????????????
????? 7902 FORD??????????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20?????????????????????????????
????? 7934 MILLER????????? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10?????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> --在模糊查詢中,使用轉意
SQL> select *
? 2? from emp
? 3? where ename like '%\_%' escape '\';
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇 1 行。
SQL> --escape:指明的字符即為轉意字符,在該轉意字符后的一個字符為字符本身
SQL> ed
已寫入 file afiedt.buf
? 1? select *
? 2? from emp
? 3* where ename like '%a_%' escape 'a'
SQL> /
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇 1 行。
SQL> --查詢名字是四個字符的員工
SQL> select *
? 2? from emp
? 3? where ename like '____';
???? EMPNO ENAME?????????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO?????????????????????????????
---------- --------------- --------- ---------- -------------- ----- ---------- ----------?????????????????????????????
????? 7521 WARD??????????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30?????????????????????????????
????? 7839 KING??????????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10?????????????????????????????
????? 7902 FORD??????????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20?????????????????????????????
已選擇3行。
SQL> exit
SQL> --查詢不是10,20號部門的員工
SQL> select
? 2? *
? 3? from emp
? 4? where deptno not in(10,20);
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE????????????? SAL?????? COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
??? DEPTNO?????????????????????????????????????????????????????????????????????
----------?????????????????????????????????????????????????????????????????????
????? 7499 ALLEN????? SALESMAN??????? 7698 20-2月 -81?????????? 1600??????? 300
??????? 30?????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????
????? 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?????????????????????????????????????????????????????????????????????
----------?????????????????????????????????????????????????????????????????????
????? 7698 BLAKE????? MANAGER???????? 7839 01-5月 -81?????????? 2850???????????
??????? 30?????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????
????? 7844 TURNER???? SALESMAN??????? 7698 08-9月 -81?????????? 1500????????? 0
??????? 30?????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81??????????? 950???????????
??????? 30?????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????
已選擇6行。
SQL> set linesize 120
SQL> col sal for 9999
SQL> /
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 7499 ALLEN????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30??????????????????????????????????
????? 7521 WARD?????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 7698 BLAKE????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30??????????????????????????????????
????? 7844 TURNER???? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
已選擇6行。
SQL> --排序
SQL> --按照員工工資排序
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 13-7月 -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??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20??????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> a? desc
? 3* order by sal desc
SQL> /
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -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??????????????????????????????????
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 7876 ADAMS????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
????? 7369 SMITH????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20??????????????????????????????????
已選擇15行。
SQL> --按照獎金排序
SQL> select *
? 2? from emp
? 3? order by comm;
???? 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??????????????????????????????????
????? 7521 WARD?????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 7876 ADAMS????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7934 MILLER???? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10??????????????????????????????????
????? 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??????????????????????????????????
????? 7369 SMITH????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20??????????????????????????????????
已選擇15行。
SQL> set pagesize 60
SQL> /
???? 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??????????????????????????????????
????? 7521 WARD?????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 7876 ADAMS????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7934 MILLER???? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10??????????????????????????????????
????? 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??????????????????????????????????
????? 7369 SMITH????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20??????????????????????????????????
已選擇15行。
SQL> ed
已寫入 file afiedt.buf
? 1? select *
? 2? from emp
? 3* order by comm desc
SQL> /
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 7369 SMITH????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20??????????????????????????????????
????? 7934 MILLER???? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
????? 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??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 7876 ADAMS????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 7521 WARD?????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30??????????????????????????????????
????? 7499 ALLEN????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30??????????????????????????????????
????? 7844 TURNER???? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30??????????????????????????????????
已選擇15行。
SQL> --將null排到最后
SQL> select *
? 2? from emp
? 3? order by comm desc
? 4? nulls last;
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 7521 WARD?????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30??????????????????????????????????
????? 7499 ALLEN????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30??????????????????????????????????
????? 7844 TURNER???? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 7876 ADAMS????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7934 MILLER???? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10??????????????????????????????????
????? 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??????????????????????????????????
????? 7369 SMITH????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20??????????????????????????????????
已選擇15行。
SQL> --指定nulls last將null排到最后
SQL> --order by后面可以跟什么? 列名 別名 序號
SQL> select ename,sal 工資
? 2? from emp
? 3? order by 工資;
ENAME??????????? 工資??????????????????????????????????????????????????????????????????????????????????????????????????
---------- ----------??????????????????????????????????????????????????????????????????????????????????????????????????
SMITH???????????? 800??????????????????????????????????????????????????????????????????????????????????????????????????
JAMES???????????? 950??????????????????????????????????????????????????????????????????????????????????????????????????
ADAMS??????????? 1100??????????????????????????????????????????????????????????????????????????????????????????????????
WARD???????????? 1250??????????????????????????????????????????????????????????????????????????????????????????????????
MARTIN?????????? 1250??????????????????????????????????????????????????????????????????????????????????????????????????
MILLER?????????? 1300??????????????????????????????????????????????????????????????????????????????????????????????????
TURNER?????????? 1500??????????????????????????????????????????????????????????????????????????????????????????????????
ALLEN??????????? 1600??????????????????????????????????????????????????????????????????????????????????????????????????
CLARK??????????? 2450??????????????????????????????????????????????????????????????????????????????????????????????????
BLAKE??????????? 2850??????????????????????????????????????????????????????????????????????????????????????????????????
JONES??????????? 2975??????????????????????????????????????????????????????????????????????????????????????????????????
FORD???????????? 3000??????????????????????????????????????????????????????????????????????????????????????????????????
SCOTT??????????? 3000??????????????????????????????????????????????????????????????????????????????????????????????????
KING???????????? 5000??????????????????????????????????????????????????????????????????????????????????????????????????
Tom_123????????????????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> select ename,sal
? 2? from emp
? 3? order by 2;
ENAME??????? SAL???????????????????????????????????????????????????????????????????????????????????????????????????????
---------- -----???????????????????????????????????????????????????????????????????????????????????????????????????????
SMITH??????? 800???????????????????????????????????????????????????????????????????????????????????????????????????????
JAMES??????? 950???????????????????????????????????????????????????????????????????????????????????????????????????????
ADAMS?????? 1100???????????????????????????????????????????????????????????????????????????????????????????????????????
WARD??????? 1250???????????????????????????????????????????????????????????????????????????????????????????????????????
MARTIN????? 1250???????????????????????????????????????????????????????????????????????????????????????????????????????
MILLER????? 1300???????????????????????????????????????????????????????????????????????????????????????????????????????
TURNER????? 1500???????????????????????????????????????????????????????????????????????????????????????????????????????
ALLEN?????? 1600???????????????????????????????????????????????????????????????????????????????????????????????????????
CLARK?????? 2450???????????????????????????????????????????????????????????????????????????????????????????????????????
BLAKE?????? 2850???????????????????????????????????????????????????????????????????????????????????????????????????????
JONES?????? 2975???????????????????????????????????????????????????????????????????????????????????????????????????????
FORD??????? 3000???????????????????????????????????????????????????????????????????????????????????????????????????????
SCOTT?????? 3000???????????????????????????????????????????????????????????????????????????????????????????????????????
KING??????? 5000???????????????????????????????????????????????????????????????????????????????????????????????????????
Tom_123????????????????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> select ename,sal,comm,sal*12+nvl(comm,0)
? 2? from emp
? 3? order by 4;
ENAME??????? SAL?????? COMM SAL*12+NVL(COMM,0)?????????????????????????????????????????????????????????????????????????
---------- ----- ---------- ------------------?????????????????????????????????????????????????????????????????????????
SMITH??????? 800????????????????????????? 9600?????????????????????????????????????????????????????????????????????????
JAMES??????? 950???????????????????????? 11400?????????????????????????????????????????????????????????????????????????
ADAMS?????? 1100???????????????????????? 13200?????????????????????????????????????????????????????????????????????????
WARD??????? 1250??????? 500????????????? 15500?????????????????????????????????????????????????????????????????????????
MILLER????? 1300???????????????????????? 15600?????????????????????????????????????????????????????????????????????????
MARTIN????? 1250?????? 1400????????????? 16400?????????????????????????????????????????????????????????????????????????
TURNER????? 1500????????? 0????????????? 18000?????????????????????????????????????????????????????????????????????????
ALLEN?????? 1600??????? 300????????????? 19500?????????????????????????????????????????????????????????????????????????
CLARK?????? 2450???????????????????????? 29400?????????????????????????????????????????????????????????????????????????
BLAKE?????? 2850???????????????????????? 34200?????????????????????????????????????????????????????????????????????????
JONES?????? 2975???????????????????????? 35700?????????????????????????????????????????????????????????????????????????
FORD??????? 3000???????????????????????? 36000?????????????????????????????????????????????????????????????????????????
SCOTT?????? 3000???????????????????????? 36000?????????????????????????????????????????????????????????????????????????
KING??????? 5000???????????????????????? 60000?????????????????????????????????????????????????????????????????????????
Tom_123????????????????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> --按照部門號和工資排序輸出員工的信息
SQL> select *
? 2? from emp
? 3? order by deptno,sal;
???? EMPNO ENAME????? JOB????????????? MGR HIREDATE???????? SAL?????? COMM???? DEPTNO??????????????????????????????????
---------- ---------- --------- ---------- -------------- ----- ---------- ----------??????????????????????????????????
????? 7934 MILLER???? CLERK?????????? 7782 23-1月 -82????? 1300??????????????????? 10??????????????????????????????????
????? 7782 CLARK????? MANAGER???????? 7839 09-6月 -81????? 2450??????????????????? 10??????????????????????????????????
????? 7839 KING?????? PRESIDENT??????????? 17-11月-81????? 5000??????????????????? 10??????????????????????????????????
????? 7369 SMITH????? CLERK?????????? 7902 17-12月-80?????? 800??????????????????? 20??????????????????????????????????
????? 7876 ADAMS????? CLERK?????????? 7788 13-7月 -87????? 1100??????????????????? 20??????????????????????????????????
????? 7566 JONES????? MANAGER???????? 7839 02-4月 -81????? 2975??????????????????? 20??????????????????????????????????
????? 7788 SCOTT????? ANALYST???????? 7566 13-7月 -87????? 3000??????????????????? 20??????????????????????????????????
????? 7902 FORD?????? ANALYST???????? 7566 03-12月-81????? 3000??????????????????? 20??????????????????????????????????
????? 7900 JAMES????? CLERK?????????? 7698 03-12月-81?????? 950??????????????????? 30??????????????????????????????????
????? 7654 MARTIN???? SALESMAN??????? 7698 28-9月 -81????? 1250?????? 1400???????? 30??????????????????????????????????
????? 7521 WARD?????? SALESMAN??????? 7698 22-2月 -81????? 1250??????? 500???????? 30??????????????????????????????????
????? 7844 TURNER???? SALESMAN??????? 7698 08-9月 -81????? 1500????????? 0???????? 30??????????????????????????????????
????? 7499 ALLEN????? SALESMAN??????? 7698 20-2月 -81????? 1600??????? 300???????? 30??????????????????????????????????
????? 7698 BLAKE????? MANAGER???????? 7839 01-5月 -81????? 2850??????????????????? 30??????????????????????????????????
????? 1234 Tom_123?????????????????????????????????????????????????????????????????????????????????????????????????????
已選擇15行。
SQL> --當order by作用與多列時,先按照第一列排序,如果相同,則按照第二列排序;以此類推
SQL> spool off
總結
以上是生活随笔為你收集整理的Oracle过滤与排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java操作SQL Server数据库
- 下一篇: Oracle基本查询