標籤:
1、SCOTT使用者之中的主要資料表
dept、emp、salgrade、bonus。觀察四張表結構(文法:DESC 表)。
|·部門表:dept
NO. 欄位 類型 描述
1、 DEPTNO NUMBER(2) 部門編號,最多隻能由兩位元字所組成
2、 DNAME VARCHAR2(14) 部門名稱,由14個位元組長度所組成
3、 LOC VARCHAR2(13) 部門位置
|·僱員表:emp
NO. 欄位 類型 描述
1、 EMPNO NUMBER(4) 僱員編號,最多隻能由四位元字所組成
2、 ENAME VARCHAR2(10) 僱員姓名,由14個位元組長度所組成
3、 JOB VARCHAR2(9) 職位,多個僱員的職位元據一定會重複
4、 MGR NUMBER(4) 領導編號,領導也一定是公司的僱員
5、 HIREDATE DATE 僱傭日期,DATE包含年、月、日、時、分、秒
6、 SAL NUMBER(7,2) 基本工資,表示由2位小數位和5位整數位組成
7、 COMM NUMBER(7,2) 傭金,銷售人員才會存在傭金
8、 DEPTNO NUMBER(2) 僱員所在的部門編號,與dept表對應
|·工資等級表:salgrade
NO. 欄位 類型 描述
1、 GRADE NUMBER 等級編號
2、 LOSAL NUMBER 此等級的最低工資
3、 HISAL NUMBER 此等級的最高工資
|·工資表:bonus
NO. 欄位 類型 描述
1、 ENAME VARCHAR2(10) 僱員姓名
2、 JOB VARCHAR2(9) 職位
3、 SAL NUMBER 工資
4、 COMM NUMBER 傭金
*注意:oracle中的字串資料型別是VARCHAR2,四張表中只有bonus表沒有資料
2、sql文法
·sql簡介
|·DML資料操作語言。————指的是實現資料庫的查詢與跟新操作
|·DDL資料定義語言 (Data Definition Language)。————定義資料庫的對象
|·DCL資料控制語言。————控制使用者的操作許可權
·簡單查詢
對於查詢一共分為:簡單查詢、限定查詢、多表查詢、統計查詢,四類的查詢。
SELECT [DISTINCT] *| 列[別名],···——>2、控制要顯示的資料列
FROM 表名稱[別名];——>1、確定查詢的資料來源
//"|"表示或、“distinct”表示去掉重複行資料、“*”表示查詢所有列、
注意:sql語句執行的先後順序
*範例:
查詢每個僱員的編號(empno)、姓名(ename)、職位(job)、基本工資(sal)
SELECT empno,ename,job,sal FROM emp;
*select子句中可以進行各種數學計算
*範例:
查詢每個僱員的編號、姓名、基本年薪
SELECT empno,ename,sal*12 FROM emp;
*範例:
未查詢列取別名
SELECT empno 編號,ename 姓名,sal*12 年薪 FROM emp;
*注意:在實際開發中要迴避用中文
*範例:
查詢每個僱員的編號、姓名、職位、年薪,而且每位僱員每個月有200元的飯食補助、200汽車補助
夏天四個月有300元的高溫補貼、年底的時候可以有15個月的基本工資。
SELECT empno,ename,job,(sal+400)*12+300*4+sal*3 income FROM emp;
*範例:
消除重複列,使用DISTINCT關鍵字,此關鍵字只能出現在select子句中:
SELECT DISTINCT job FROM emp;
*注意:只有在所有的列都重複的情況下才叫重複,才能剔除重複。
oracle中增加了一個“||”d串連符,可以進行資料的串連
*範例:
SELECT ename || job FROM emp;
* 範例:想有這樣的資料顯示
編號:7300,姓名:smith,工資:800
在程式中固定的資料都稱為字串,而對於資料庫中字串的表示應該使用單引號“ ‘’ ”;
SELECT ‘編號: ‘ || empno ||‘、 姓名: ‘ || ename info FROM emp;
Oracle學習(二)—簡單查詢