【oracle】二、基本的select語句

來源:互聯網
上載者:User

標籤:

一、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語句

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.