Oracle 限制資料和對資料的排序

2021-10-02 05:17:44 字數 3429 閱讀 2394

限制條件通過where子句來實現

where子句的寫法:where 列名 比較操作符 比較的值:sal>3000

--1.字元型別比較

select ename,sal,deptno

from emp

where ename=『tom』;

--注意:1.字元比較用單引號 2.和表中的值一樣,區分大小寫

--2.數值比較

select ename,sal,comm

from emp

where sal>

3000;

--3.日期型別的比較

select ename,sal,hiredate

from emp

where hiredate>to_date(『1981-12

-01』,『yyyy-mm-dd』);

--4.<>的比較

select ename,hiredate,sal

from emp

where hiredate<>to_date(『1981-12

-03』,『yyyy-mm-dd』)

between and

--注意:包含上下限

--1.1 數值型別:

select ename,sal,job

from emp

where sal between

3100

and4800;

--1.2 字元比較

select ename,sal,job

from emp

where ename between 『aromano』 and 『miller』;--按照首字母字典的順序

--1.3 日期比較

select ename,sal,job

from emp

where hiredate between to_date(

'1981-01-01','yyyy-mm-dd'

)and to_date(

'1991-01-01','yyyy-mm-dd'

);

in的比較
--比較和in集合列表中的任何乙個值相等

--2.1 數值型別

select ename,sal

from emp

where sal in

(3100

,4800,1

);--2.2 字元比較

select ename,sal

from emp

where ename in

('tom'

,'tom_ab'

,'dd');

--2.3 日期型別的比較:dd-mon-rr(oracle預設支援該格式)

select ename,sal

from emp

where hiredate in

('03-2月-97'

,'02-4月-81'

);

like:模糊查詢滿足部分匹配
--兩個萬用字元:

--1._:代表任意乙個字元

--2.%:代表任意多個字元

select ename,sal

from emp

where ename like 『%a%』;--只要包含a的就返回資料,沒有具體的位置

『_a%』;--第二個字母必須是a

『%a_』;--倒數第二個必須是a

--轉義符:escape

select ename,job

from emp

where job like『man\_%』 escape『\』;

--轉義符號前後保持一致,例如@也可以,&也可以,但它本身是乙個變數,會讓輸入乙個值

is null檢索資料為空
select sal,comm	

from emp

where comm is

null;--is not null(非空)

and:邏輯與:
--兩個標答是都為true,整個表示式為true

--如果有乙個為false,則整個表示式為false

select ename,job

from emp

where sal>

1000

and job=『clerk』

or:邏輯或:

--只要有乙個為true,則整個表示式為true

--兩個為false,整個表示式為false

not:邏輯非,取反

--應用場景:

--not between ... and

--not like

--is not null

--not in

--1.算術運算子:*,\,+,-

--2.連線運算子:||

--3.比較運算子:=,<>,<,>,<=,>=

--4.特殊比較運算子:between .. and...,in,like,is null

--5.邏輯非:not

--6.邏輯與:and

--7.邏輯或:or

order

by: --asc:公升序(預設)

--desc:降序

--書寫順序:在所有子句的最後

--注意:公升序空值排在最後,空值最大

--表示式不能進行排序,只有別名可以

--1.數值型別排序:

select ename,sal

from emp

where sal>

1000

order

by sal;--預設按照公升序排序

--2.字元排序:

select ename,job,sal

from emp

order

by ename desc;--降序排列

--3.日期排序

select hiredate

from emp

where hiredate>『01

-1月-

82』 order

by hiredate desc;

--4.空值排序(空值最大)

select comm

from emp

order

by comm asc;

--排序基礎:從左往右排序

Oracle練習 第3章 限制資料和對資料排序

1.選擇部門30中的雇員 select from emp where deptno 30 2.列出所有辦事員的姓名 編號和部門 jobid為 clerk select ename,empno,deptno from emp where job clerk 3.找出佣金高於薪金的雇員 select f...

資料庫 限制資料和對資料排序

1 比較操作符 2 限定資料選擇行 查詢條件為字串時,需加單引號 查詢條件為日期時,格式為 01 1月 15 例子 select from emp.where deptno 10 查詢deptno 10的資料 3 特殊比較運算子 1 between.and.判斷在某個範圍 例子 select fro...

Oracle中對資料行數的操作

有如下資料庫定義 資料庫名稱 td order liu列名 訂貨號,商品名,顯示號碼 其中顯示號碼並不是連續的 1,2,3 n 也就是說並非直接代表了那一行的位置。現在,要實現如下兩個功能 1,資料按照 顯示號碼 排序後,選取第 n行資料 sql select from select 訂貨號,商品名...