查询资料善用SELECT叙述.PPTVIP

  • 2
  • 0
  • 约7.25千字
  • 约 69页
  • 2018-07-07 发布于天津
  • 举报
查询资料善用SELECT叙述

第 9 章 查詢資料― 善用 SELECT 敘述 本章提要 9-1 SELECT 敘述的基本結構 9-2 SELECT 子句 9-3 FROM 子句 9-4 WHERE 子句 9-5 GROUP BY 子句 9-6 HAVING 子句 9-7 ORDER BY 子句 9-8 COMPUTE 子句 9-1 SELECT 敘述的基本結構 完整的 SELECT 敘述語法相當繁雜, 為了便於說明, 在此我們先列出 SELECT 敘述中的主要子句, 讓各位先了解 SELECT 敘述的基本結構, 然後再分節詳述各子句的語法及用法。 SELECT 敘述的基本結構 上列語法總共只有 8 句而已, 而且有些子句, 如 SELECT、INTO、FROM、WHERE, 前面的章節已使用過很多次了, 各位應該不致於感覺太陌生才對。 其中由於 SELECT INTO 的用法, 我們在 8-4 節就已經詳細介紹過了, 所以這裏就不再重複說明;至於其它各子句的內容, 就請您看下面各節的介紹。 9-2 SELECT 子句 首先上場的是 SELECT 子句, SELECT 子句的作用是從資料表中挑選出要查詢的欄位, 詳細語法如下: 指定欄位名稱 我們先來看在 SELECT 子句中如何指定欲查詢的欄位名稱, 也就是設定 select_list 的內容。基本上有下列 3 種方式: *:代表資料表中的所有欄位, 例如:SELECT *。 column_name:若僅要查詢資料表中的部份欄位, 就直接將那些欄位名稱列出, 欄位名稱之間用逗號相隔, 例如:SELECT 編號, 書名, 定價。 expression:利用運算式來指定欄位, 運算式的內容可以是欄位名稱、常數、函數 ... 等的組合, 例如:SELECT 定價 * 0.8、SELECT FLAG。 指定欄位名稱 底下我們來看幾個簡單的應用範例。第 1 個例子是查詢書籍資料表中所有欄位的資料: 指定欄位名稱 第 2 個例子查詢書籍資料表中書籍名稱欄位和價格欄位的資料, 而且價格欄位的值還要打 8 折: 指定欄位名稱 第 3 個例子是直接利用 SELECT 子句顯示常數, 因為這個例子不需要從資料表中挑選欄位, 所以連 FROM 子句也省略了: 資料表名稱.欄位名稱 如果是從多個資料表或檢視表中查詢, 那麼 “SELECT * ” 是代表所有資料表 (或檢視表) 中的所有欄位。 如果要指明某資料表 (或檢視表) 的所有欄位, 需用 資料表 (或檢視表) 名稱或別名.* 的方式, 例如:SELECT 書籍.*, 訂單.*。 另外, 如果這些資料表 (或檢視表) 中有同名的欄位, 也要加上資料表或檢視表名稱或別名的方式來指定, 例如:SELECT 訂單.編號, 書籍.編號。 是否顯示重複記錄:ALL 與 DISTINCT SELECT 子句後若加上 DISTINCT 參數, 那麼查詢結果中若有重複的多筆資料 (即每個欄位值都相同的資料), 將只會顯示其中一筆。ALL 的功能則相反, 不論資料是否重複均會顯示。預設值是 ALL, 因此通常不須使用 ALL 參數, 只有在不要顯示重複資料時才用 DISTINCT 來指定。 下面範例會顯示書籍資料表中出版公司欄位的所有資料: 是否顯示重複記錄: ALL 與 DISTINCT 是否顯示重複記錄: ALL 與 DISTINCT 如果我們只是想看看到底有哪些出版公司, 列出重複的資料就沒有意義了, 這時就可以用 DISTINCT 參數來過濾: TOP n 與 TOP n PERCENT TOP n 表示查詢資料表最前面 n 筆記錄, 若再加上 PERCENT, 即 TOP n PERCENT, 則表示查詢前面 n 百分比的記錄, 此時 n 的值可以從 0 到 100。 下面範例可以查詢書籍資料表的前 2 筆記錄: TOP n 與 TOP n PERCENT 下面範例則是查詢書籍資料表的前 30% 的記錄: 需結合 ORDER BY 子句的 WITH TIES WITH TIES 是平手的意思, 當要顯示的資料在排序時有平手的狀況時, 則一併顯示出來 (排序的方式要用 ORDER BY子句來指定, 請參閱 9-7 節)。 底下我們用兩個範例讓各位比較一下是否使用 WITH TIES 的差別: 需結合 ORDER BY 子句的 WITH TIES 需結合 ORDER BY 子句的 WITH TIES 上述兩組敘述的意思都是先將書籍資料表的記錄按價格欄位由小到大排序之後, 再顯示前 3 筆記錄。 首先來看看資料排列後, 前幾筆資料的狀況如下: 需結合 ORDER BY 子句的 WITH TIES 使用「TOP 3」的第一組敘述只列出 3 筆, 所以只列出了表中的前 3 筆資料, 於

文档评论(0)

1亿VIP精品文档

相关文档