第二章 Oracle過濾和排序數據

一、在查詢中過濾行(where)

select employee_id,last_name,salary
  from employees
  where employee_id  > 200
操作符 含義
= 等於(不是==)
> 大於
>= 大於、等於
< 小於
<= 小於、等於
<> 不等於(也可以是!=)

賦值使用:=符號

between…and…包含邊界值

select last_name,hire_date,salary
	from employees
	where salary>=4000 and salary<=7000;
select last_name,hire_date,salary
	from employees
	where salary between 4000 and 7000;

in取括號中的幾個值(離散值)

select last_name,hire_date,salary,department_id
	from employees
	where department_id =90 or department_id =80 or department_id=70
select last_name,hire_date,salary,department_id
	from employees
	where department_id in (70,80,90);

like模糊查詢

select last_name,hire_date,salary,department_id
	from employees
	where last_name like '%a%';
--like
--員工中名字含有字符a的員工
select last_name,hire_date,salary,department_id
	from employees
	where last_name like '%a';
--員工中名字末位是a的員工
select last_name,hire_date,salary,department_id
	from employees
	where last_name like '%\_%' escape '\';
--員工中名字含有_的員工

null 空

select last_name,hire_date,salary,department_id,commission_pct
	from employees
	where commission_pct is null;

1.邏輯運算

操作符 含義
AND 邏輯並
OR 邏輯或
NOT 邏輯否
select last_name,hire_date,salary,department_id,commission_pct
	from employees
	where department_id = 80 and salary <=8000;

2.優先級

優先級
1 算法運算符
2 連接符
3 比較符
4 IS (NOT) NULL,LIKE,(NOT) IN
5 (NOT) BETWEEN
6 NOT
7 AND
8 OR

可以使用括號改變優先級順序

二、在查詢中對行進行排序

select last_name,hire_date,salary,department_id,commission_pct
from employees
	where department_id = 80 
	order by salary desc
--desc降序 asc升序,默認爲desc
select last_name,hire_date,salary,department_id,commission_pct
	from employees
	where department_id = 80 
	order by salary asc,last_name asc;
--根據工資降序排序,工資相同時按照工資排序

總結

1.使用where子句過濾數據

  • 使用比較運算
  • 使用between and,in,like,null運算
  • 使用邏輯運算符AND,OR和NOT

2.使用ORDER BY子句進行排序

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