ORACLE之SQL——排序
**
1、給查詢結果進行降序
**
按照員工的僱傭日期給員工進行降序查詢
按照員工的編號進行升序查詢
提示,對於升序或者降序操作查詢可以通過所查詢的位置號進行操作,如以下:
對員工的員工號進行降序查詢可以這樣寫:
上面的寫法在程式開發中會很有用,因為它指定的是位置,如果需要改變有可能會忘記改order by 後面的條件,給開發帶來不少的麻煩。
練習:查詢10號部門員工的員工編號,員工姓名和工資,並按照員工的工資進行升序操作。
查詢有提成員工的姓名,編號,工資和提成,並按照提成進行升序操作。
**
2、多個欄位之間的排序操作
**
在實際的需求中,通常會遇到對多個欄位進行排序的操作,比如在職工表emp中,按照部門編號進行升序排序,並按照工資進行降序操作排序。
**
3、按照子串進行排序操作
**
在hr使用者中,有一張表為employees表,表中有一欄位phone_number,我們知道,電話號碼的長度一般至少為7位,通常為了增強客戶的認可度,我們需要只查詢表中phone_number欄位的最後四個尾號,這樣該怎做呢?而函式就可以幫我們很好的解決這一問題。來看示例:
**
4、函式TRANSLATE
**
語法格式:
translate(expr,from_string,to_string)
translate函式的作用就是將字串中的字元一一替換,如果被替換中的字元to_string在expr中找不到,將返回expr中的原字元,否則全部替換,如果from_string中有兩個相同的字元,在to_string中以出現的第一個字元為標準。
如果to_string中的字元為空,則返回空值。如果to_string中對應的位置沒有字元,from_string中的字元將會清除掉。
**
5、translate函式的作用體現,混合字串排序
**
比如我們發現一個列中即有字母,又有數字,而我們的需求只是對其中的字母進行排序,TRANSLATE函式的作用就體現出來了。
示例:
先建立一個字母和數字的混合列。
按照字母進行升序排序
按照數字進行降序排列
這裡使用了一個lpad函式,關於這個函式的使用,後續更新的部落格中將會詳細解釋,在這裡就不解釋了。
**
6、空值排序處理
**
對於空值排序的處理,ORACLE提供了專門用於處理空值處理的兩個關鍵詞,分別是nulls first和nulls last
**
7、根據條件取不同列中的值來進行排序
**
示例:有這麼一種需求,需要檢視員工工資在某個範圍中的工資,並優先顯示。
例如:查詢工資在3000到4000之間的員工的工資,並優先顯示。
相關推薦
ORACLE之SQL——排序
** 1、給查詢結果進行降序 ** 按照員工的僱傭日期給員工進行降序查詢 按照員工的編號進行升序查詢 提示,對於升序或者降序操作查詢可以通過所查詢的位置號進行操作,如以下: 對員
ORACLE之SQL
BULK COLLECT 子句會批量檢索結果,即一次性將結果集繫結到一個集合變數中,並從SQL引擎傳送到PL/SQL引擎。通常可以在SELECT INTO、 FETCH INTO以及RETURNING INTO子句中使用BULK COLLECT。本文將逐一描述BULK COLLECT在這幾種情形下的
Oracle之SQL優化專題02-穩固SQL執行計劃的方法
首先構建一個簡單的測試用例來實際演示: create table emp as select * from scott.emp; create table dept as select * from scott.dept; create index idx_emp_empno on emp(empno);
Oracle之SQL優化專題01-檢視SQL執行計劃的方法
在我2014年總結的“SQL Tuning 基礎概述”中,其實已經介紹了一些檢視SQL執行計劃的方法,但是不夠系統和全面,所以本次SQL優化專題,就首先要系統的介紹一下檢視SQL執行計劃的方法。 本文示例SQL為: --set lines 1000 pages 1000 select a.emp
Oracle之sql語言的分類及基礎函式
SQL語言的分類 SQL語言共分為四大類:資料查詢語言DQL,資料操縱語言DML,資料定義語言DDL,資料控制語言DCL。 1. 資料查詢語言DQL 資料查詢語言DQL基本結構是由SELECT子句,FROM子句,WHERE 子句組成的查詢塊: SELECT
Oracle之SQL優化-索引的基本原理(二)
導讀:1、為什麼使用索引? 2、什麼情況下適合建立索引? 3、建立索引的策略。 4、如何對索引進行操作。 5、常用到的一些索引操作。 1、為什麼使用索引? (1)、原因 索引中只有一列,io小,所以較快; 索引中此列是排序的,二叉查詢,提高查詢速度。 (2)、原因分
Oracle資料庫 —— SQL之select語句(2) where子句和資料排序
6 select語句 6.2 where子句(條件子句) 1、where的作用,是對錶中行資料進行限制,符合where條件資料就被選中,不符合where條件資料就被過濾掉。 select id,salary from s_emp; select
Oracle之PL/SQL編程_數據類型與定義變量和常量
oracle 數據類型 變量 常量-----------------------------------基本數據類型-----------------------------------1.數值類型NUMBER(P,S)參數 P 表示精度,參數 S 表示刻度範圍。精度是指數值中所有有效數字的個數,而刻度範圍是
[轉載]Oracle PL/SQL之LOOP循環控制語句
com 範圍 toolbar 得到 end 執行權 增加 oracl 序列 在PL/SQL中可以使用LOOP語句對數據進行循環處理,利用該語句可以循環執行指定的語句序列。常用的LOOP循環語句包含3種形式:基本的LOOP、WHILE...LOOP和FOR...LOOP。
Oracle之PL/SQL編程
無提示 字符串轉換 保留字 case語句 大於等於 不變 replace 異常 inner PL/SQL(Procedural Language/SQL,過程語言/SQL) 是結合了Oracel過程語言和結構化查詢語言(SQL)的一種擴展語言。 優點: (1)PL/SQ
53 Oracle資料庫SQL開發之 子查詢——編寫包含子查詢的UPDATE和DELETE
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
66 Oracle資料庫SQL開發之 高階查詢——使用線性迴歸函式
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
Oracle的sql開發之包技術實戰
前言: 包(package)的主要作用是用於邏輯組合相關的pl/sql型別,比如記錄型別或者集合型別,pl/sql遊標或者遊標宣告以及pl/sql子程式,還可以包含任何可以在塊的宣告區中定義的變數。一旦建立了一個包,包就會被儲存在Oracle資料庫中。可以將包放到共享池中,以便被多個應用程式共享和呼叫。一
ORACLE PL/SQL程式設計之六: 把過程與函式說透(窮追猛打,把根兒都拔起!)
本篇主要內容如下: 6.1 引言 6.2 建立函式 6.3 儲存過程 6.3.1 建立過程 6.3.2 呼叫儲存過程 6.3.3 AUTHID 6.3.4 PRAGMA AUTONOMOUS_TRANSACTION 6.3.5 開發儲存過程步驟 6.3.6
111 Oracle資料庫SQL開發之 檢視——修改 刪除檢視
111.Oracle資料庫SQL開發之 檢視——修改、刪除檢視 歡迎轉載,轉載請標明出處:http://blog.csdn.net/notbaron/article/details/50043091 CREATE OR REPLACE可以徹底替換一個檢視。 如下: [email
SQL語句 oracle限制和排序
2.1 where 作用:限制行的查詢 例2.1.1 SQL> select dname from scott.dept where deptno = 10; 2.2 Between Between 100 and 103 :包含100和103 例2.2.
oracle order by 排序之降序 null 排最後
1 表資料person_info id name age 1 qq 23 2 ee &
19 Oracle資料庫SQL開發之 笛卡爾積
19.Oracle資料庫SQL開發之 笛卡爾積如果在多表查詢中不指定連線條件,就會導致將一個表中的所有行都連線到另外一個表中的所有行上。稱為笛卡爾積。如果第一個表包含50行,第二個表包含100行,那麼將返回5000行。例如:SQL>select pt.product_ty
4.Oracle之DCL的SQL語句之使用者許可權以及三大正規化
DCL (Data Control Language,資料庫控制語言)用於定義資料庫許可權 一、使用者許可權 1.1 建立使用者以及授權: Eg :CREATE USER 使用者名稱 IDENTIFIED BY 密碼 ; 1.2 GRANT 許可權 TO 使用者名稱 ; Eg:G