1. 程式人生 > >Oracle:模糊查詢/關鍵字查詢

Oracle:模糊查詢/關鍵字查詢

模糊查詢語法:

where  欄位值 like 模糊值;

萬用字元:

1· %代表任意數量的任意字元;

2·—代表一個任意字元。佔位符,有且只有一個任意字元

Eg:查詢含有N字母的員工資訊:(表後附上)

select id, last_name

from s_emp

where last_name like '&N%';

 Eg:查詢含有名字第二個字母是e的員工資訊:

select last_name,selery
from s-emp
where last_name like '_e%';

Eg:查詢含有N或n字母的員工資訊:(兩種方法)

select id,last_name
from e_emp
where upper(last_name) like '%N%';//或者where lower(last_namee) like '%n%';
       
select id,last_name
from e_emp
where last_name like '%n%'
        or last_name like '%N%';

在查詢第一個字元為‘—’的時候,系統會認為這個是一個萬用字元,而不會識別它是一個下劃線,所以要使用字元轉義,告訴系統它是一個下劃線 

 字元轉義:

1·在要轉義的字元前面加一個標識字元;

2·使用escape關鍵字生命哪一個字元是標識字元。

Eg:查詢一個第一個字元為‘—’的員工資訊

我們事先在表裡插入一個資訊,為了實驗:

即插入一個首字母為—的員工

沒有字元轉義的缺陷:

 select id,last_name
 from s_emp
 where last_name like '_%';

用了字元轉義的例子: 

select id,last_name
from s_emp
where last_name like 'a_%' escape 'a';

 

匯入表的小操作:(兩行程式碼)

alter session set nl_language = 'english';//修改語言環境

start 表的位置