Oracle之PL/SQL基礎學習之二

jerryhui發表於2009-10-19

1.在Where條件中使用LIKE操作符

Like操作符用於執行模糊查詢。當執行模糊查詢時,需要使用萬用字元"%"和"_"。其中"%"用於表示0個或多個字元,而"_"用於表示單個字元。如果要將萬用字元"%"和"_"作為字元值使用,那麼需要在ESCAPE之後使用轉義符。

示例一:顯示首字元為S的所有僱員名及其工資
Select ename,sal from emp where ename like 'S%'

示例二:顯示第三個字元為大寫A的所有僱員名及其工資

Select ename,sal from emp where ename like '__A%'

例項三:顯示僱員名包含'_'的僱員資訊(其中ESCAPE後的字元a為轉義符)

Select ename,sal from emp where ename like '%a_%' ESCAPE 'a';

2.在Where條件中使用IN操作符

IN操作符用於執行列表匹配操作。當列或表示式結果匹配於列表中的任一個值,條件子句返回TRUE。

Select ename,sal from emp where sal in (800,1250)

3.在Where條件中使用IS NULL操作符

IS NULL操作符用於檢測列或表示式的結果是否為NULL。

如果結果為NULL,則返回TRUE;否則返回FALSE。

Select  ename,sal from emp where mgr is nll;

注意:當與NULL進行比較時,千萬不要使用=,<>操作符,儘管使用它們不會有任何語法錯誤,但條件子句返回總是FALSE。

4.在Where子句中使用邏輯操作符:

當執行查詢操作時,許多情況下需要指定多個查詢條件。當使用多個查詢條件時,必須要使用邏輯操作符AND,OR和NOT。含義如下:

AND:如果條件都是TRUE,則返回TRUE,否則返回FALSE。

OR:如果任一個條件是TRUE,則返回TRUE,否則返回FALSE。

NOT:如果條件時FALSE,則返回TRUE;如果條件是TRUE,則返回FALSE.

注意:邏輯操作符AND,OR,NOT的優先順序低於任一種比較操作符,在這三個操作符中,NOT優先順序最高,AND其次,OR最低。如果要改變優先順序,需使用括號。

示例一:顯示在部門20崗位CLERK的所有僱員資訊
Select ename,sal,job,deptno from emp where deptno=20 and job='clerk'

示例二:顯示工資高於2500或崗位為MANAGER的所有僱員資訊

Select ename,sal,job,deptno from emp where sal > 2500 or job='MANAGER'

示例三:顯示補助非空的僱員資訊

Select ename,sal,comm from emp where comm is not null

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12035968/viewspace-616888/,如需轉載,請註明出處,否則將追究法律責任。

相關文章