自己整理的學習資料——DB2 V8資料庫基礎(十九)
3.5 高階sql簡單介紹
3.5.1 查詢間使用運算詞
l UNION 運算子
UNION 運算子通過組合其他兩個結果表(例如 TABLE1 和 TABLE2)並消去表中任何重複行而派生出一個結果表。當 ALL 隨 UNION 一起使用時(即 UNION ALL),不消除重複行。兩種情況下,派生表的每一行不是來自 TABLE1 就是來自 TABLE2。
l EXCEPT 運算子
EXCEPT 運算子通過包括所有在 TABLE1 中但不在 TABLE2 中的行並消除所有重複行而派生出一個結果表。當 ALL 隨 EXCEPT 一起使用時 (EXCEPT ALL),不消除重複行。
l INTERSECT 運算子
INTERSECT 運算子通過只包括 TABLE1 和 TABLE2 中都有的行並消除所有重複行而派生出一個結果表。當 ALL 隨 INTERSECT 一起使用時 (INTERSECT ALL),不消除重複行。
注:使用運算詞的幾個查詢結果行必須是一致的。
3.5.2 外連線
l left outer join:
左外連線(左連線):結果集幾包括連線表的匹配行,也包括左連線表的所有行。
l right outer join:
右外連線(右連線):結果集既包括連線表的匹配連線行,也包括右連線表的所有行。
l full outer join:
全外連線:不僅包括符號連線表的匹配行,還包括兩個連線表中的所有記錄。
注:複合外連線按照從左到右的順序執行連線,左邊連線的結果集和右邊連線
3.5.3 超級分組和移動函式
l grouping sets:用來在單個sql中形成多級分組。
例:select company_id,node_id,count(customer_id) from customer group by grouping sets(company_id,node_id)
l rollup:可以在單個資料庫操作中形成多個分組。
select company_id,node_id,count(customer_id) from customer group by
rollup(company_id,node_id)
注:rollup操作不是可交換的操作,指定使用者組的順序是很重要的。
l cube: 生成分組表中分組的所有組合。
例:select company_id,node_id,count(customer_id) from customer group by
cube(company_id,node_id)
l over:移動函式可以幫助實現移動的資料分析
Select date,avg(qty) over(order by date rows between 1 preceding and 1 following) as values from sale
3.5.4 常用函式介紹
具體參見《SQL Reference Volume 1》
l 轉化為數字型別的型別轉化函式:
如果引數是一個數字表示式,返回與其相對應的浮點數,否則返回錯誤程式碼
DOUBLE() 、FLOAT()
SELECT DOUBLE('5678') FROM TEST;
返回整型常量中的數字、字串或者日期、時間的整數表示.
SELECT ID, INT(‘111’) FROM TEST;
返回整型常量中的數字、字串或者時間戳的64位長整數表示.
SELECT ID,BIGINT(time) FROM TEST;
SELECT ID,BIGINT(“111”) FROM TEST;
返回整型常量中的數字、字串的短整數表示.
SELECT ID, SMALLINT (“111”) FROM TEST;
返回一個數值的單精度浮點數表示.
返回一個數值、decimal的字串、integer的字串floating-point的字串、日期、時間或時間戳的decimal數值
返回一個表示為字串的值的16進製表示
返回小於或等於引數的最大整數.
SLECT FLOOR(88.93) FROM TEST;
l 轉化為字串型別的型別轉化函式:
返回日期時間型,字串,整數,十進位制或雙精度浮點數的字串表示
SELECT CHAR(SALARY,',') FROM TEST;
返回具有由引數指定的ASCII碼的字元,引數可以是INTEGER or SMALLINT
返回字串、日期型、圖形串的可變長度的字串表示.
SELECT VARCHAR(name,50) FROM TEST ;
返回SMALLINT,INTEGER, BIGINT or DECIMAL參數的字串值
DIGITS ()
SELECT DIGITS(id) FROM TEST
系統格式原因,本節未完。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9524210/viewspace-471547/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自己整理的學習資料——DB2 V8資料庫基礎(六)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(七)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(八)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十一)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十二)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十三)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十六)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十七)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十八)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(一)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(四)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(五)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十一)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十二)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十四)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十六)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十七)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十八)DB2資料庫
- mysql資料庫學習基礎知識整理MySql資料庫
- 資料庫基礎知識整理與複習總結資料庫
- 【java基礎資料整理】Java
- 零基礎學習MySQL資料庫—3MySql資料庫
- salesforce零基礎學習(九十九)Salesforce Data Skew(資料傾斜)Salesforce
- 學習資料庫的基礎知識的書籍資料庫
- 突擊學習之資料庫基礎彙總資料庫
- 資料庫學習筆記 - MySQL基礎知識資料庫筆記MySql
- MySQL資料庫基礎學習筆記(整理自蘇勇老師的MySQL基礎課程視訊)MySql資料庫筆記
- Go 學習資料整理Go
- iOS 學習資料整理iOS
- swift學習資料整理Swift
- 資料庫 基礎資料庫
- 資料庫基礎資料庫
- 資料庫資料整理資料庫
- 語料庫基礎學習
- 整理最全的“大資料”學習資源大資料
- 資料科學和人工智慧技術筆記 十九、資料整理(6)資料科學人工智慧筆記
- 大資料學習方法,學大資料需要的基礎和路線大資料