顾美玲勾引管家|日韩黄色成人|国产精品theporn动漫|欧美日日日|国产精品探花在线

專業只做數據庫實訓和認證的品牌機構

微信公眾號新浪微博
免費咨詢電話:400-0909-964
當前位置: 網站首頁 > DBA實戰 > DBA課程 > DBA基礎課程:oracle基礎查詢語句和數據排序

DBA基礎課程:oracle基礎查詢語句和數據排序

文章來源: 更新時間:2016/6/24 11:33:39

在線老師點擊咨詢:

最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!

我要咨詢

dba基礎課程:oracle基礎查詢語句和數據排序

本文所以練習都是基于oracle自帶提供的一個數據庫進行的。數據庫中包含員工表emp。部門信息表dept。員工工資工總表

下面是三個表的表結構:

一:基本查詢語句

1.最簡單的查詢所有列語句

Select * from emp;

2.查詢指定列表的查詢語句

Select empno ,ename,sal from emp;

注意:oracle默認的字符型和日期型數據是左對齊。而數字數據是右對齊

3.帶有簡單算術運算符的簡單查詢:

Select empno ,ename,sal +500 from emp;

注意:oracle中簡單運算符的優先級:

1)先乘除,后加減

2)同一優先級次序是從左到右

3)如使用了括號。先運算括號內

4.在sql語句中使用列的別名

Select empno as "num" ,ename name ,(sal +500)*12 "annual salary" from emp;

從上面sql語句我們可以看出。只需在列名和別名之間放上 as或者空格就可以把列名改為別名。字符串別名需要加上雙引號。

5.連接運算符

Select ename || "每年的工資為" || (sal +500)*12 "annual salary" from emp;

Oracle中的連接符是由兩個豎線(||),用于把一個或多個列或字符串連接在一起。

6.去重運算符distinct

Select deptno from emp;

Select distinct deptno from emp;

從上面可以看出。查詢員工表中所有員工的部門號。在第一個查詢語句中。沒有用distinct去重。第二個用到distinct去重之后。所有部門號相同的數據都去掉了

二.限制性查詢和數據排序

1.where關鍵字。其后跟限制性條件。條件由列名、字符串和一些比較預算附等組成。

條件格式:表達式 opera 表達式

這里的opera可為:>,>=,<,<=,=,<>(或),!=

除了這些oracle還提供了between and、in和like限制條件

例句:Select * from emp where sal>=2000;

2.使用between and 比較

Select * from emp where sal between 2000 and 3000;

獲得工作在2000和3000之間的所有數據。

值得注意

1.between and 也可以用于時間的比較。此時時間要用單引號。

2.如果想查詢不在某一區間的數據。直接在between前面加not就可以

3.使用in比較符

查找工作為saleman、clerk和manager的人

Select * from emp where job in

('SALESMAN','CLERK','MANAGER');

附:如果想查找數據不在所給的元素中?梢灾苯釉趇n前面加not

4.使用like比較符

Select * from emp where job like 'SA%';

上訴例子指的就是查詢工作名以SA開頭的所有員工信息。

“%”表示0個或多個字符

“-" 表示一個且只能是一個字符

注意:這里有一點要注意的是。Where后面的 查詢條件中的值中字符串是區分大小寫的。筆者在剛才做實驗的時候。把SA寫成sa。一直不出結果。所以請大家注意這一點。

5.轉移字符:”\“

6.Order by子句

Select * from emp where job like 'SA%' order by sal;

由上面我們可以發現。我們查詢到的結果按工資從小到大排好了順序。Oracle查詢數據中如果用到order by進行排序的話。默認的排序為(ASC)升序。如果想要降序的話用DESC

注意:

1.如果查詢中不使用order by。結果次序不確定。即兩次查詢。次序可能不一樣

2.如果使用了order by 子句。其一定是sql語句中的最后一個子句

7.order by 子句中使用別名或表達式。

Select ename ,(500+sal)*12 annualsal from emp where job like 'SA%' order by annualsal;

Oracle進行排序時可以用別名作為排序列。也可以用表達式、

注:

1.oracle也可以用列號作為排序的規則。但是這種情況很少用。因為用列號排序不太明確

2.Oracle中排序也可以用多列作為排序標準,中間用逗號隔開。

Select ename ,(500+sal)*12 annualsal from emp where job like 'SA%' order by annualsal , ename;

本文地址:http://www.mudan321.com/dba/kecheng/12298884982.html 轉載請注明!


PostgreSQL入門到精通 100+ 個學習資料

Oracle培訓機構

金牌講師<>

冉乃綱-老師CUUG金牌講師
冉老師 CUUG金牌講師 Oracle及RedHat高級講師、Unix/Linux 資深專家...[詳細了解老師]

免費咨詢上課流程 客服在線中

陳衛星-老師CUUG金牌講師
陳老師 CUUG金牌講師 精通Oracle管理、備份恢復、性能優化 11年Ora...[詳細了解老師]

免費咨詢上課流程 客服在線中

選學校如何選擇適合自己的學校

CUUG -CHINA UNIX USER GROUP,是國際UNIX組織UNIFORUM的中國代表,是國內悠久的專業UNIX培訓機構,被譽為中國UNIX 的搖籃。多年來,以提高教學質量為本,強調素質教育,積極引進、消化國外的新技術,有效的結合中國....[詳情]

一站式服務(從入學到就業一幫到底)

入學

學習

就業

實操

食宿
地址:北京市海淀區田村山南路35號院17號樓
課程咨詢: 400-0909-964
企業服務:137 1818 8639(陳經理)
部分信息來源于網絡,如有錯誤請聯系指正!
版權所有@北京神腦資訊技術有限公司 (CUUG,中國UNIX用戶協會) Copyright 2016 ALL Rights Reserved 京ICP備11008061號-1