oracle筆記(五)條件查詢

條件查詢

SELECT       *|{[DISTINCT] column|expression [alias ],...}

FROM        table

[WHERE     condition(s) ];

Condition(s) 要使用到比較運算符常用的比較運算符如下 :

操作符

含義

=

等於

大於

>=

大於等於

小於

<=

小於等於

<> 

不等於 等效於 !=

其它操作

And 邏輯運算   邏輯與

Or  邏輯運算   邏輯或

Not 邏輯運算   邏輯否

Between 起始值 and 結束值 : 使用 BETWEEN 運算來顯示在一個區間內的值 包含 ( 起始結束值 )

In: 使用 IN 運算顯示列表中的值。 In(,,,) 相當於一個集合 , 只要出現集合中匹配的就顯示

Like

l       使用 LIKE 運算選擇類似的值

l       選擇條件可以包含字符或數字 :

         % 代表零個或多個字符 ( 任意個字符 )

         _ 代表一個字符。

Escape

   迴避特殊符號的:使用轉義符。例如:將 [%] 轉爲 [\%] [_] 轉爲 [\_] ,然後再加上 [ESCAPE ‘\’] 即可

Null:

使用 IS (NOT) NULL 判斷空值。

 

// 查詢部門號爲 10 的員工信息   部門爲整數類型

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno=10;

// 查詢職位號爲 MANAGER 的員工信息   崗位的類型爲字符類型

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where job='MANAGER';

// 查詢部門號爲 10 並且員工的職位爲 MANAGER 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where job='MANAGER' and deptno=10;

注意:

l        字符和日期要包含在單引號中

l        字符大小寫敏感,日期格式敏感

l        默認的日期格式是 DD-MON-RR

// 查詢部門號大於 10 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno>10;

// 查詢薪水大於等於 3000 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>=3000;

// 查詢薪水不等於 3000 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal<>3000;

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal !=3000;

// 查詢薪水大於 2000 並且小於 3000 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>2000 and sal<3000;

// 查詢薪水大於等於 2000 並且小於等於 3000 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal between 1600 and 3000;

// 等效於

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>=1600 and sal<=3000;

// 查詢部門號位 10 20 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno in(10,20);

// 注意:相當於如下操作:

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno =10 or deptno=20;

// 查詢員工名稱以 S 開頭的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like 'S%';

// 查詢員工名稱以 S 結尾的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%S';

// 查詢員工名稱第三個字符爲 N 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '__N%';

// 查詢員工名稱中含有 N 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%N%';

// 查詢員工名稱中倒數第二個字符爲 % 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%\%_'escape'\';

// 查詢員工名稱總含有 % 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%\%%'escape'\';

// 查詢獎金爲 null 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where comm is null;

// 查詢獎金非 null 的員工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where comm is not null;

優先級表格:

優先級

 

1

算術運算

2

連接符

3

比較符

4

Is not null like not in

5

Not between

6

not

7

and

8

Or

備註:可以採用括號改變優先級

 

   關係數據庫 - à 層次關係 à 網狀的關係 - à 關係數據庫 - à 對象關係。

 

 

發佈了14 篇原創文章 · 獲贊 0 · 訪問量 1932
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章