數據庫的查詢基本傳都是sql語句,當讓也會有數據庫本身的方言。
1.查詢一個表的所有內容:select job from emp;
JOB
---------
CLERK
SALESMAN
SALESMAN
MANAGER
SALESMAN
MANAGER
MANAGER
ANALYST
PRESIDENT
SALESMAN
CLERK
CLERK
ANALYST
CLERK
14 rows selected
此查詢出來有好多重複的內容需要去重,要用到關鍵字distinct
select distinct job from emp;
JOB
---------
CLERK
SALESMAN
PRESIDENT
MANAGER
ANALYST
這樣就把重複的內容去除了
2.多字段查詢
如要查詢 姓名 職位 薪資 :
select ename,job,sal from emp;
也可是使用“||”來連接要查詢出的字段
select ename||job||sal from emp;
這個語句和上邊的語句是等同的,但是這個查詢出來的字段都是挨着的,如下:
ENAME||JOB||SAL
-----------------------------------------------------------
SMITHCLERK800
ALLENSALESMAN1600
WARDSALESMAN1250
JONESMANAGER2975
MARTINSALESMAN1250
BLAKEMANAGER2850
CLARKMANAGER2450
SCOTTANALYST3000
KINGPRESIDENT5000
TURNERSALESMAN1500
ADAMSCLERK1100
JAMESCLERK950
FORDANALYST3000
MILLERCLERK1300
14 rows selected
要解決這個問題,我們可以使用分隔符如逗號,空格等,在oracle中要原樣輸出的字符要用單引號括起來。在sql中單引號表示的是字符串。
select ename||' '||job||' '||sal from emp;
ENAME||''||JOB||''||SAL
------------------------------------------------------------------
SMITH CLERK 800
ALLEN SALESMAN 1600
WARD SALESMAN 1250
JONES MANAGER 2975
MARTIN SALESMAN 1250
BLAKE MANAGER 2850
CLARK MANAGER 2450
SCOTT ANALYST 3000
KING PRESIDENT 5000
TURNER SALESMAN 1500
ADAMS CLERK 1100
JAMES CLERK 950
FORD ANALYST 3000
MILLER CLERK 1300
3.如要輸出的字符串是:
姓名:john,職位:java developer,薪資:800!
例舉如下:
select '姓名:'||ename||',職位:'||job||',薪資:'||sal||'!' 職員信息 from emp;
職員信息
-----------------------------------------------------------------------------
姓名:SMITH,職位:CLERK,薪資:800!
姓名:ALLEN,職位:SALESMAN,薪資:1600!
姓名:WARD,職位:SALESMAN,薪資:1250!
姓名:JONES,職位:MANAGER,薪資:2975!
姓名:MARTIN,職位:SALESMAN,薪資:1250!
姓名:BLAKE,職位:MANAGER,薪資:2850!
姓名:CLARK,職位:MANAGER,薪資:2450!
姓名:SCOTT,職位:ANALYST,薪資:3000!
姓名:KING,職位:PRESIDENT,薪資:5000!
姓名:TURNER,職位:SALESMAN,薪資:1500!
姓名:ADAMS,職位:CLERK,薪資:1100!
姓名:JAMES,職位:CLERK,薪資:950!
姓名:FORD,職位:ANALYST,薪資:3000!
姓名:MILLER,職位:CLERK,薪資:1300!