oracle表的查詢學習筆記

2021-07-01 18:44:29 字數 1285 閱讀 5133

!檢視表結構

desc emp;

?複製所查詢的表資料,加入該錶:insert into users(userid,username,userpass) select * from users;

?查詢該錶有多少列:select count (*) from users;

?取消重複行:select distinct deptno,job from emp;

!使用算數表示式

?顯示年工資:select sal*13,ename from emp;

?對列名起別名:select sal*13 "年工資" , ename from emp;

?+獎金的年工資:select sal*13+comm*13 "年工資" ,eanme from emp;此時查詢出的資訊中如果comm列為空則查詢出的年工資資訊就是空的。

?解決方案:處理null值,使用nvl函式來處理:

select sal*13 +nvl(comm,0*13) "年工資", ename from emp;

!使用where 字句

?查詢1982.1.1後入職的員工:select ename,hiredate from emp where hiredate >『01-1月-1982』 ;

?查詢工資大於2000小於2500元的人:select ename,sal from emp where sal<=2500 and sal>=2000;

!使用like操作符

%:表示任意0到多個字元

_:表示單個字元

?顯示首字元為s的員工姓名和工資:select ename ,sal from emp where ename like 's%';

?顯示第三個字元為大寫0的所有的員工的工資:select ename ,sal from emp where ename like '_ _o%';此處的空白是不需要的       只是為了看的清楚。

!在where條件中使用in

?顯示empno為7844,7788,7839...的雇員的情況:select * from emp where empno in(7844,7788,7839);

!使用is null的操作符

?顯示沒有上級的雇員的情況:select * from emp where mgr is null;

!使用邏輯操作符號

?查詢工資高於500或是崗位為manager的雇員同時還要滿足他們的姓名的首字母為大寫的j:

select * from emp where (sal>500 or job='manager') and ename like'j%';

oracle 學習筆記 層次查詢

以oracle自帶的orcl資料庫中scott使用者下的emp表為例。empty表的字段如下,我們關心兩個字段員工編號empni,和員工直屬上司mge。層次查詢示意圖如下,樹狀結構,葉子節點都為普通員工,其餘節點都是領導或上司。使用語法如下 要明確指出,連線關係以及開始條件 決定從樹狀結構的那個幾點...

Oracle學習筆記 表的管理

create table table name filed1 datatype filed2 datatype filed3 datatype filed 指定列名 datatype 列型別文字 二進位制型別 數值型別 時間日期 注意 1.如果資料長度固定,則應當使用char資料來存放,訪問速度快 ...

Oracle學習 之 表的連線查詢

這個內容在資料庫系統中已經學習過了,這只簡單介紹oracle中join的方式和注意點 簡介 自然連線將兩個資料來源中具有相同名稱的列進行連線。select from 表1 natural join 表2 簡介 又稱為簡單連線,它把兩個或多個表進行連線,只查出匹配的記錄,不匹配的記錄將無法查詢出來。即...