第1章 數據庫的使用 1
1.1 什麼是SQL 2
1.2 程序語言或數據庫 3
1.3 SQL Server 概述 5
1.4 Oracle概述 7
第2章 SELECT查詢語句 9
2.1 基本SELECT子句 10
2.2 字段選擇(SELECT) 12
2.3 指定數據源(FROM) 14
2.4 指定查詢限定條件(WHERE) 15
2.4.1 比較運算符 15
2.4.2 以邏輯運算符組閤多個條件 17
2.4.3 列舉項目(IN / NOT IN) 19
2.4.4 NULL選取 20
2.4.5 範圍限製(BETWEEN...AND) 21
2.4.6 字符模糊匹配 22
2.5 查詢結果的排序(ORDER BY) 23
2.6 數據分組(GROUP BY) 26
第3章 基本SQL用法 29
3.1 SQL編寫風格 30
3.2 數據錶連接的使用 33
3.2.1 內連接 34
3.2.2 外連接 37
3.2.3 交叉連接 39
3.3 子查詢 41
3.3.1 嵌套子查詢 42
3.3.2 相關子查詢 43
3.4 集閤的使用 45
3.4.1 並集(UNION) 47
3.4.2 交集(INTERSECT) 49
3.4.3 差集(MINUS) 49
3.5 CASE錶達式 51
3.5.1 簡單型CASE子句 51
3.5.2 搜索式CASE子句 52
3.6 HAVING子句的使用 55
3.7 DISTINCT語法的使用 57
3.8 特殊SQL排序法 59
3.8.1 CASE錶達式 60
3.8.2 字符串位置函數(INSTR、CHARINDEX) 67
3.8.3 COUNT函數(聚閤函數) 68
3.9 如何取得兩數據集中非重復的數據 69
3.9.1 FULL OUTER JOIN 71
3.9.2 區域去除 72
3.10 如何避免除零錯誤(Avoid Diving by Zero) 76
第4章 數據變更處理 79
4.1 新增─INSERT 80
4.1.1 數據輸入(INSERT...VALUES) 80
4.1.2 數據來自其他錶(INSERT...SELECT) 82
4.2 序列值的使用 83
4.3 取得當前自動編號值 89
4.3.1 SCOPE_IDENTITY() 89
4.3.2 OUTPUT 91
4.3.3 RETURNING 92
4.4 更新數據─UPDATE 93
4.5 刪除數據─DELETE 96
4.5.1 刪除特定數據 96
4.5.2 使用連接刪除數據(DELETE With JOIN) 97
4.5.3 刪除重復的數據 98
4.5.4 刪除大量數據 100
4.5.5 清空數據錶(TRUNCATE TABLE) 101
第5章 數據類型 103
5.1 基本數據類型 104
5.1.1 字符類型 104
5.1.2 數值類型 106
5.1.3 日期類型 111
5.2 數據類型的選擇 113
5.3 類型轉換 115
5.4 NULL概述 116
第6章 字符串函數的使用 121
6.1 字符串函數介紹 123
6.1.1 字符串連接 123
6.1.2 截取子串 124
6.1.3 字符位置 127
6.1.4 獲取字符串長度(字符個數) 128
6.1.5 刪除空格(特定字符) 129
6.1.6 字符串替換 130
6.1.7 字符串填補 134
6.1.8 變換字符/字符ASCII碼 135
6.1.9 變換大小寫 136
6.2 字符串模糊比較 136
6.3 是否為數值字符串 141
6.4 中文字判斷 143
6.5 篩選特定字符串前綴─以半導體實驗生産批號為例 146
6.6 固定長度字符串─以特定字符補足長度 148
6.7 特定字符齣現次數─以麵闆檢測結果為例 149
第7章 日期函數的使用 155
7.1 格式轉換 157
7.2 取得部分日期信息 161
7.3 日期運算的概念 164
7.4 日期加減運算 168
7.5 取得兩個日期/時間的差 174
7.6 取得特定日期 176
7.7 找齣下個周五 181
第8章 數值函數的使用 185
8.1 數值函數 186
8.1.1 餘數(MOD)和商數 187
8.1.2 常用的數值運算函數 187
8.1.3 次方、平方根、自然對數、對數、EXP(e) 191
8.1.4 圓周率(PI)、三角函數(Sin、Cos、Tan) 192
8.2 轉換函數 193
8.3 SQL Server數學運算時的注意事項 198
8.4 判斷是否為整數─餘數的應用 203
8.5 判斷兩個日期前後順序─SIGN函數的應用 204
第9章 SQL用法進階 207
9.1 數據行轉置─Row To Column 210
9.1.1 通過SQL命令實現轉置 210
9.1.2 使用PIVOT命令實現轉置 214
9.2 數據列轉置─Column To Row 220
9.3 員工專長明細 227
9.4 纍計匯總 230
9.5 匯總數據 238
9.6 數據記錄的排序——傳迴各種書籍訂單訂購數量排名 249
9.7 每個部門中薪水最高的員工 253
9.8 機群分組閤並狀態 257
9.9 個稅計算 266
9.10 商品組閤 270
9.11 求職網 279
9.12 Defect Overlap─缺陷重疊分析 284
9.13 職務代理關係錶/係統異常處理人員順序錶 289
9.14 組織圖─樹型結構展開 294
第10章 日期區間報錶 307
10.1 日報 309
10.1.1 日期類型 309
10.1.2 字符類型 312
10.2 月報 314
10.2.1 日期類型 314
10.2.2 字符類型 317
10.3 周報 318
10.3.1 周的特殊定義 319
10.3.2 運算差異分析 321
10.4 小時區間報錶 323
10.4.1 3小時區間報錶 324
10.4.2 5小時區間報錶 328
10.4.3 利用序列産生報錶 332
10.5 科學園區四二輪報錶 334
10.5.1 四二輪報錶-日報 337
10.5.2 四二輪報錶-月報 340
10.5.3 四二輪報錶-周報 345
10.5.4 綜閤日期報錶 349
10.6 完整日期區間報錶 361
10.6.1 完整日期報錶-未轉置 362
10.6.2 完整日期報錶-以産品轉置 365
10.6.3 完整日期報錶-以日期轉置 368
第11章 存儲過程 371
11.1 存儲過程 373
11.1.1 程序 373
11.1.2 函數 377
11.1.3 錯誤來源 380
11.1.4 加密 381
11.2 觸發器 383
11.3 遊標的使用 394
11.4 程序包 403
11.5 用戶自定義聚閤函數 407
第12章 異質數據源 421
12.1 分布式查詢─Database Link 422
12.2 SQL Server串聯其他數據源 438
12.2.1 查詢 439
12.2.2 INSERT / UPDATE 441
12.2.3 對象及查詢命令的差異 441
12.2.4 結閤異質數據 443
12.3 SQL*Loader(SQLLDR) 446
第13章 特殊應用 453
13.1 Oracle CONNECT BY命令特殊應用 454
13.1.1 序列産生 455
13.1.2 Column To Row(UNPIVOT) 456
13.1.3 分組字符串閤並 458
13.1.4 解析CSV字符串 461
13.2 通用錶錶達式的使用─CTE 462
13.2.1 非遞歸的運用─查詢暫存 463
13.2.2 遞歸的運用 464
13.3 序列數據錶的應用 468
13.4 隨機數 469
13.5 IN-LIST的使用 475
13.6 製程能力指標 478
13.7 係統數據錶的使用 482
13.8 在SQL Server中進行字符串分組串聯─FOR XML應用 486
· · · · · · (
收起)