標籤:
一、select 基本文法:
SELECT *|{[DISTINCT] column|expression [alias],...}FROMtable;
SELECT 標識 選擇哪些列。
FROM 標識從哪個表中選擇。
1、從表中取出所有列
select * from emp;
Connected to Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 Connected as c##[email protected]SQL> select * from emp;EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO----- ---------- --------- ----- ----------- --------- --------- ------ 7369 SMITH CLERK 7902 1980/12/17 800.00 20 7499 ALLEN SALESMAN 7698 1981/2/20 1600.00 300.00 30 7521 WARD SALESMAN 7698 1981/2/22 1250.00 500.00 30 7566 JONES MANAGER 7839 1981/4/2 2975.00 20 7654 MARTIN SALESMAN 7698 1981/9/28 1250.00 1400.00 30 7698 BLAKE MANAGER 7839 1981/5/1 2850.00 30 7782 CLARK MANAGER 7839 1981/6/9 2450.00 10 7788 SCOTT ANALYST 7566 1987/1/24 3000.00 20 7839 KING PRESIDENT 1981/11/17 5000.00 10 7844 TURNER SALESMAN 7698 1981/9/8 1500.00 0.00 30 7876 ADAMS CLERK 7788 1987/4/2 1100.00 20 7900 JAMES CLERK 7698 1981/12/3 950.00 30 7902 FORD ANALYST 7566 1981/12/3 3000.00 20 7934 MILLER CLERK 7782 1982/1/23 1300.00 1014 rows selected
2、從表中取出特定的列
SQL> SELECT ENAME,JOB FROM EMP;ENAME JOB---------- ---------SMITH CLERKALLEN SALESMANWARD SALESMANJONES MANAGERMARTIN SALESMANBLAKE MANAGERCLARK MANAGERSCOTT ANALYSTKING PRESIDENTTURNER SALESMANADAMS CLERKJAMES CLERKFORD ANALYSTMILLER CLERK14 rows selected
二、使用算術運算子
1、從EMP表中取出員工的年工資
SQL> SELECT ENAME,SAL*12,SAL*12+COMM FROM EMP;ENAME SAL*12 SAL*12+COMM---------- ---------- -----------SMITH 9600 ALLEN 19200 19500WARD 15000 15500JONES 35700 MARTIN 15000 16400BLAKE 34200 CLARK 29400 SCOTT 36000 KING 60000 TURNER 18000 18000ADAMS 13200 JAMES 11400 FORD 36000 MILLER 15600 14 rows selected
三、列的別名
SELECT column [AS] "別名"FROMtable;
AS關鍵詞可以省略 別名的雙引號也可以省略 雙引號主要是為了防止別名中含有空格或特殊符號
SQL> SELECT ENAME AS "姓 名",SAL 工資 FROM EMP;姓 名 工資---------- ---------SMITH 800.00ALLEN 1600.00WARD 1250.00JONES 2975.00MARTIN 1250.00BLAKE 2850.00CLARK 2450.00SCOTT 3000.00KING 5000.00TURNER 1500.00ADAMS 1100.00JAMES 950.00FORD 3000.00MILLER 1300.0014 rows selected
四、使用串連符 || 合并列
SQL> SELECT ENAME || ‘的工作是‘ || JOB FROM EMP;ENAME||‘的工作是‘||JOB-------------------------------SMITH的工作是CLERKALLEN的工作是SALESMANWARD的工作是SALESMANJONES的工作是MANAGERMARTIN的工作是SALESMANBLAKE的工作是MANAGERCLARK的工作是MANAGERSCOTT的工作是ANALYSTKING的工作是PRESIDENTTURNER的工作是SALESMANADAMS的工作是CLERKJAMES的工作是CLERKFORD的工作是ANALYSTMILLER的工作是CLERK14 rows selected
五、去除重複行 DISTINCT
SQL> SELECT JOB FROM EMP;JOB---------CLERKSALESMANSALESMANMANAGERSALESMANMANAGERMANAGERANALYSTPRESIDENTSALESMANCLERKCLERKANALYSTCLERK14 rows selectedSQL> SELECT DISTINCT JOB FROM EMP;JOB---------CLERKSALESMANPRESIDENTMANAGERANALYST
【oracle】二、基本的select語句