Oracle基本查詢
阿新 • • 發佈:2017-09-13
world 作用 語句 一行 tin 一個 收入 show 兩個 本例的操作前期都在控制臺完成,後期會使用客戶端。
1 SQL> --設置行寬 2 SQL> show linesize 3 linesize 80 4 SQL> set linesize 150 5 SQL> --設置列寬 6 SQL> col ename format a8 7 SQL> col sal for 9999 8 //col是column的縮寫,代表列,在sqlplus中比sql方便的是支持縮寫 9 //for是format的縮寫, 10 //a代表一個符號位,8代表長度 11 //9代表一個數字符號位,9999代表該列的列寬為4個數字長度
1 SQL> --查詢員工信息:員工號 姓名 月薪 年薪 獎金 年收入 2 SQL> select empno,ename,sal,sal*12,comm,sal*12+comm 3 //可以直接在語句中進行計算
1 /* 2 SQL> SQL中的null值: 3 SQL> 1. 包含null的表達式都為null 4 SQL> 2. null永遠!=null 5 SQL> *、 6 SQL> */ 7 SQL> select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) 8 在實際使用的過程中,如果 某個表達式包含空值,那麽這個表達式的結果也為null;9 不能通過=號來判斷數據是否為空,應該用is 10 錯誤: where comm=null; 11 正確:where comm is null;
1 NVL(a,b) 2 nvl函數表示如果a為空,那麽取值為b,不為空,取原值。 3 例如: 4 SQL> select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) 5 2 from emp; 6 拓展: 7 SQL> ed 8 使用默認的記事本軟件打開上一條sql語句進行編輯 9 保存關閉後 10 SQL> / 11 使用/來執行保存的語句,也就是執行上一條語句
1 去除重復 2 SQL> --distinct 去掉重復記錄 3 SQL> select deptno from emp;有重復 4 SQL> select distinct deptno from emp;沒有重復 5 去重兩個作用與兩個列 6 SQL> select distinct deptno,job from emp; 7 上一行的語句意思是:去除部門號和職位都相同的數據 8
1 SQL> --連接符 || 2 SQL> -- concat 3 SQL> select concat(‘Hello‘,‘ World‘) from dual; 4 CONCAT(‘HELL 5 ------------ 6 Hello World 7 SQL> --dual表:偽表 8 dual是數據庫提供的偽表,要查詢的操作不屬於任何的表時,就需要使用此表進行占位。 9 SQL> select 3+2 from dual; 10 3+2 11 ---------- 12 5 SQL> select ‘Hello‘||‘ World‘ 字符串 from dual; 13 字符串 14 ------------ 15 Hello World 16 SQL> --查詢員工信息:***的薪水是**** 17 SQL> select ename||‘的薪水是‘||sal 信息 from emp; 18 信息 19 ---------------------------------------------------------- 20 SMITH的薪水是800
Oracle基本查詢