sql資料庫優化書籍 第二章之給查詢結果排序

2021-08-21 12:04:12 字數 1199 閱讀 8341

eg: select empno,deptno,sal,ename,job

from emp

order by 2 asc,3 desc;

注:1.其中2、3代表取其中位置為2、3的引數名;

2.多欄位排序用逗號隔開即可;

eg:translate(''ab 你好 bcadefg','abcdefg','1234567')

結果 12 你好 2314567

1.如果to_string為空,則返回空值;

2.如果to_string對應的位置沒有字元,刪除from_string中列出的字元將會被消掉;

3.我們一般應用場景:當列值為 data

7369 sajda

54343 dadaw

43544 dawd

時需要排序,那麼就要消掉其中的字母或者數字在經行排序;

eg:translate(data,'- 0123456789','-'); 這樣巧妙的刪掉了空格和數字('-' 不加會為null,全刪)

eg:想排序數字同理;

1.一般情況值為空排序預設在後面,如果想把控制顯示在前面,使用nvl(data,-1);

(這種方法需要對列型別及儲存的資料有所了解,資料有變化,語句就得重新維護)

2.空值在前關鍵字 nulls first

eg:order by 3 nulls first;

3.空值在後關鍵字 nulls last

eg:order by 3 nulls last;

eg:取工資在1000 到 2000 之間的員工排在前排序,剩餘區間的工資在後排序;

1.select empno as 編碼

ename as 姓名,

case when sal >=1000 and sal< 2000 then 1 else 2 end as 級別,

sal as 工資

where deptno = 30

order by 3,4;

結果:可以擬造乙個列先排,完後在排另外一列

另一種寫法:

2.select empno as 編碼,

ename as 姓名,

sal as 工資

from emp

where deptno = 20

order by case when sal >=1000 and sal< 2000 then 1 else 2 end,3;

學習SQL資料庫第二章

一 select 語句基礎 1.查詢指定列 select 關鍵字 語法 select 列名 希望查詢列的名稱 from 表名 指定選取資料的表 從 shohin 中取 3 列 select shohin id,shohin mei,hanbai tanka 列的順序可以任意指定,逗號 分隔,查詢結果...

資料庫第二章

關係模式 型 是對關係的描述 是靜態 穩定的 關係 值 關係模式在某一時刻的狀態或內容 動態的 不斷變化的 關係模式和關係往往籠統稱為關係,通過上下文加以區別 關聯式資料庫的型與值 關聯式資料庫的型 關聯式資料庫模式,是對關聯式資料庫的描述 關聯式資料庫的值 關係模式在某一時刻對應的關係的集合,通常...

第二章 SQL Server資料庫

一,變數分類 區域性變數。全域性變數 區域性變數 宣告變數 declare 變數名 資料型別 declare id char 10 宣告乙個長度為個字元的變數id declare age int 宣告乙個存放職員年齡的整型變數 變數賦值 set 變數名 值 用於普通的賦值 set age 20 se...