- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十九章资料库SQL.ppt
第十九章? 資料庫SQL 簡單報表 Mastar/Detail 列印 分群列印 習題 SQL 是一種結構化資料庫查詢語言, 此一語言提供使用者建立、維護及查詢一個關聯式資料庫管理系統的命令。因為SQL 語言具有易學習及閱讀的親合性, 所以SQL 已經被各種資料庫廠商採用, 而成為一種共通的標準查詢語言。只要你學會SQL, 即可操作各種資料庫如Dbase 、FoxPro 及Paradox 等。 SQL 語言是由命令(Commands) 、子句(Clauses) 、運算子(Operators) 及加總函數(Aggregate Functions) 組成, 分述如下: 1. 命令(Commands) SQL 的命令分成資料定義語言(Data Definition Language) 與資料操作語言(Data Manipulation Language), 資料定義語言可用來建立新的資料庫、資料表、欄位及索引等, 本書不予介紹; 另一為資料操作語言, 可用來建立查詢表、排序、過濾資料、萃取及修改、新增及刪除資料等動作。 SQL 的組成元素說明如下: (1) 資料定義語言(DDL) 資料定義語言如下表: (2) 資料操作語言(DML) 資料操作語言的命令如下表: 2. 子句(Clause) 子句是用於設定欲操作的對象, SQL 所用的子句如下表: 3. 運算子(Operators) 運算子又分邏輯運算子(Logical Operators) 與比較運算子(ComparisonOperator), 邏輯運算子如下表: 比較運算子如下表: 4. 加總函數(Aggregate Functions) 加總函數如下表: 對於初學者而言, 資料定義使用Database Desktop 即可勝任愉快, 以下將分四節分別介紹資料操作語言(DML) 的SELECT 、INSERT 、UPDATE及DELETE 。 19 -1 SELECT SELECT 是SQL 敘述使用最頻繁的命令, 其意為選擇的意思, 可從一到數個資料表中選擇合乎條件的欄位與記錄, 其傳回結果稱為資料集 (Recordset) 或結果集(Dataset), SELECT 語法如下: SELECT [ALL | DISTINCT] fieldlist FROM tablelist IN databasename alias [WHERE condition ] [GROUP BY fieldlist ] [ORDER BY fieldlist [ASC | DESC] ] 語法說明 1. SELECT fieldlist fieldlist 是用來放置所選用的欄位串列。欄位串列如來自不同的資料表則欄位之前要加資料表名稱, 中間以逗號(, ) 隔開。欄位中間如有空白, 則整個欄位應使用中括號括起。如果要選擇資料表的全部欄位, 則可用星號(*) 表示。此外, 欄位串列可配合SUM (求和) 、AVG (求平均) 、MAX(求極大值) 、MIN (求極小值) 、COUNT (求計個數) 等集合函數。 2. [All | DISTINCT] [ALL | DISTINCT]是可以省略的項目(語法凡加中括號者皆是可以省略的項目), 系統預設值為ALL, 若加上DISTINCT 則系統會剔除重覆的資料項。 3. FROM tablelist 用於指定來源資料表, 資料表如有一個以上, 中間應使用逗號(, ) 或驚嘆號(!) 隔開。 4. IN databasename 用來連結一個外部資料庫(若要提高處理效率, 最好使用附加資料表而不用IN 子句)。 5. alias 別名 資料表名稱有時很冗長, 當我們在使用SQL 敘述時, 可以替這些資料表名稱取一個別名。如此做法, 可以簡化SQL 敘述。 6. [WHERE condition ] 用來指定所要查詢的條件。各種條件可配合各種邏輯運算、關係運算、算術運算、集合運算及通配運算元。 7. [GROUP BY fieldlist ] 其中GROUP BY 用來將相同的資料集合併。 8. [ORDER BY fieldlist[ASC|DESC] ] 用來選擇某些欄位作為列印的先後順序, 系統內定值為升冪(ASCending), 如要指定降冪DESCending, 只要將DESC 緊跟在所需排序的欄位右方即可。 FROM 項目使用 1. 最簡單的查詢指令就是只含有SELECT 和FROM 兩個關鍵字。例如, 以下敘述: SELECT * FROM friend 可以列出資料表friend 中所有欄位資料, 其中星號(*) 代表所有欄位。下圖是執行後的結果。 2. 如果所選的欄位不只一個, 中間以逗號(, )
文档评论(0)