Oracle SELECT & DISTINCT

 最簡單的select方式就是

SELECT * 

FROM  table

就是在對應的table內取得所有column,

以emp這個table為例

SELECT *

FROM emp

就可以取得emp內所有column的資料

EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNO
7839KINGPRESIDENT-1981/11/175000-10
7698BLAKEMANAGER78391981/05/012850-30
7782CLARKMANAGER78391981/06/092450-10
7566JONESMANAGER78391981/04/022975-20
7788SCOTTANALYST75661982/12/093000-20
7902FORDANALYST75661981/12/033000-20
7369SMITHCLERK79021980/12/17800-20
7499ALLENSALESMAN76981981/02/20160030030
7521WARDSALESMAN76981981/02/22125050030
7654MARTINSALESMAN76981981/09/281250140030


如果只想知道某些特定欄位的話,
需要將query修改一下
SELECT col1, col2, col3
FROM table


例如我只想知道 EMPNO, ENAME, JOB的話
就執行

SELECT empno,ename,job 
FROM emp

EMPNOENAMEJOB
7839KINGPRESIDENT
7698BLAKEMANAGER
7782CLARKMANAGER
7566JONESMANAGER
7788SCOTTANALYST
7902FORDANALYST
7369SMITHCLERK
7499ALLENSALESMAN
7521WARDSALESMAN
7654MARTINSALESMAN


同理,如果想得知所有job這個欄位的資料

就輸入
SELECT job
FROM emp

如下圖,其實有很多重複的資料
JOB
PRESIDENT
MANAGER
MANAGER
MANAGER
ANALYST
ANALYST
CLERK
SALESMAN
SALESMAN
SALESMAN


如果想要得到不重複的資料
可以加入DISTINCT
query如下:

SELECT 
DISTINCT job 
FROM emp

JOB
ANALYST
CLERK
SALESMAN
MANAGER
PRESIDENT


這樣就可以得到不重複的資料了

0 Comments:

張貼留言