- Login
帳號:
密碼:
ASP MENU
線上教學
   ASP 教學
VB.NET 教學
JSP 教學
JAVA 教學
完整 ASP 教學
程式下載
   ASP 程式下載
提供 ASP 程式
程式量身訂做
   收費標準
填寫需求表
討論交流專區
   程式討論區
電腦資訊交流
工作機會
   社會人就職情報
汎亞人力銀行
大台中人力銀行
大高雄人力銀行
相關連結
   ASP 虛擬空間
ASP 相關網站
聯絡我們
   意見信箱
加入會員程式討論區線上購物回首頁
ASP 教學
SQL語言快速入門之三
SQL語言快速入門之三


  我們日常使用SQL語言的工作過程中,使用最多的還是從已經建立好的數據庫中查詢信息。下面,我們就來詳細介紹一下如何使用SQL語言實現各種數據庫查詢操作。


SELECT…FROM

  為方便講解,我們在數據庫中創建名為Store_Information的如下數據表。


Store_Information


Store_Name
Sales
Date

Los Angeles
$1500
Jan-10-2000

San Diego
$250
Jan-11-2000

Los Angeles
$300
Jan-12-2000

Boston
$700
Jan-12-2000




  SQL語言中用於數據庫查詢的最簡單的命令就是SELECT…FROM,語法格式為:

SELECT "column_name" FROM "table_name"

例如,如果我們希望查詢Store_Information數據表中所有的商店名稱時,可以使用如下命令:

SELECT store_name FROM Store_Information

查詢結果顯示為:

Store_Name

Los Angeles

San Diego

Los Angeles

Boston

如果用戶希望一次查詢多個字段,可以將所要查詢的字段名稱依次加入SELECT關鍵字之後,中間用“,”隔開即可。


DISTINCT

  SELECT關鍵字支持用戶查詢數據表中指定字段的所有數據,但是這樣有時就會不可避免的出現重複信息。如果用戶希望只查詢那些具有不同記錄值的信息的話,可以使用SQL語言的DISTINCT關鍵字。語法格式如下:

SELECT DISTINCT "column_name"

FROM "table_name"

例如,我們可以使用以下命令查詢Store_Information數據表具有不同記錄值的所有記錄。

SELECT DISTINCT Store_Name FROM Store_Information

查詢結果如下:

Store_Name

Los Angeles

San Diego

Boston


WHERE

  除了選擇具有不同記錄值的記錄之外,有時我們可能還會需要根據某些條件對數據庫中的數據進行查詢。例如,我們可能需要查詢Store_Information數據表中銷售額超過1000美圓的商店。為此,我們可以使用SQL語言的WHERE關鍵字設定查詢條件。語法格式如下:

SELECT "column_name"

FROM "table_name"

WHERE "condition"

由此,我們可以使用如下命令查詢銷售額超過1000美圓的商店信息:

SELECT store_name FROM Store_Information WHERE Sales > 1000

查詢結果顯示為:

store_name

Los Angeles


運算函數

  現在,我們已經了解到在使用SQL語言進行數據庫查詢操作時可以通過對數值的判斷設定靈活的查詢條件。為了增強對運算的支持能力,SQL提供了眾多實用的運算函數供廣大用戶使用。例如,我們可以直接在SQL命令中調用SUM或AVG這兩個分別用於計算總數和平均數的函數。語法格式如下:

SELECT "function type"("column_name")

FROM "table_name"

如果我們希望查詢Store_Information數據表中所有商店的總銷售額的話,可以使用如下命令:

SELECT SUM(Sales) FROM Store_Information

查詢結果顯示為:

SUM(Sales)

$2750


COUNT

  除了SUM和AVG函數之外,COUNT函數是SQL語言中另一個較為常用的運算函數。COUNT函數可以用來計算數據表中指定字段所包含的記錄數目。語法格式為:

SELECT COUNT("column_name")

FROM "table_name"

例如,如果我們希望查詢Store_Information數據表中的有關商店的記錄條數時,可以使用如下命令:

SELECT COUNT(store_name)

FROM Store_Information

查詢結果顯示為:

Count(store_name)

4

COUNT函數可以和DISTINCT關鍵字一起使用從而可以查詢數據表中指定字段中所有具有不同記錄值的記錄數目。例如,如果我們希望查詢Store_Information數據表中不同商店的數目時,可以使用如下命令:

SELECT COUNT(DISTINCT store_name)

FROM Store_Information

查詢結果顯示為:

Count(DISTINCT store_name)

3


GROUP BY

下面我們來進一步看一下SQL語言中的集合函數。上文中,我們曾使用SUM函數計算所有商店的銷售總額,如果我們希望計算每一家商店各自的總銷售額時該怎麼辦呢?要實現這一目的我們需要做兩件事:首先,我們需要查詢商店名稱和銷售額兩個字段;然後,我們使用SQL語言的GROUP BY命令將銷售額按照不同的商店進行分組,從而計算出不同商店的銷售總額。GROUP BY命令的語法格式為:

SELECT "column_name1", SUM("column_name2")

FROM "table_name"

GROUP BY "column_name1"

我們可以使用如下命令實現上述查詢目的:

SELECT store_name, SUM(Sales)

FROM Store_Information

GROUP BY store_name

查詢結果顯示為:

store_name SUM(Sales)

Los Angeles $1800

San Diego $250

Boston $700

小注:

GROUP BY關鍵字一般應用於同時查詢多個字段並對字段進行算術運算的SQL命令中。


HAVING

用戶在使用SQL語言的過程中可能希望解決的另一個問題就是對由sum或其它集合函數運算結果的輸出進行限制。例如,我們可能只希望看到Store_Information數據表中銷售總額超過1500美圓的商店的信息,這時我們就需要使用HAVING從句。語法格式為:

SELECT "column_name1", SUM("column_name2")

FROM "table_name"

GROUP BY "column_name1"

HAVING (arithematic function condition)

(GROUP BY從句可選)

由此,我們可以使用如下命令實現上述查詢目的:

SELECT store_name, SUM(sales)

FROM Store_Information

GROUP BY store_name

HAVING SUM(sales) > 1500

查詢結果顯示為:

store_name SUM(Sales)

Los Angeles $1800

小注:

SQL語言中設定集合函數的查詢條件時使用HAVING從句而不是WHERE從句。通常情況下,HAVING從句被放置在SQL命令的結尾處。



頂端
本網頁最佳瀏覽模式為:瀏覽器 IE4.0 以上    解析度: 800 x 600
Copyright © 2000-2020 COOLASP All Rights Reserved