標籤:
用SELECT語句可以實現資料庫的查詢操作,同時,它還可以使用各種子句對查詢結果進行分組統計、合計、排序等操作。SELECT語句還可以將查詢結果產生另一個表(暫存資料表或永久表)。
SELECT語句的文法格式:
SELECT [ALL|DISTINCT] select_list[INTO [new_table_name]][FROM {table_name,table_name2,...|view_name,view_name2,...}][WHERE clause][GROUP BY clause(子句)][HAVING clause(子句)][ORDER BY clause(子句)][COMPUTE clause(子句)][FOR BROWSE]
在使用中,子句可以省略,但在列出時按以上順序。
1、簡單查詢
簡單查詢包括SELECT列表、FROM子句和WHERE子句,它們分別指出所查詢的列、查詢對象(表或視圖)、搜尋條件等。
如:查詢TongFuHotel表中年齡小於30歲的男性
1 SELECT TongFuHotel.Name,TongFuHotel.Job2 FROM TongFuHotel3 WHERE TongFuHotel.Age<30 AND TongFuHotel.Sex=‘男‘
(1)SELECT列表語句
SELECT列表語句(select_list)指定所選擇的列,它可以為一組列名列表、星號、運算式、變數等構成。當用星號表示則為選擇指定表或視圖中的所有列。
SELECT *FROM TongFuHotel
使用SELECT列表語句時,多個被指定的列名之間用逗號分隔。SELECT列表還可以對數值列進行算術運算(包括加、減、乘、除、模數等)。其中,加、減、乘、除操作適用於任何數值型(如int、smallint、tinyint、decimal、numeric、float、money、smallmoney等),而模數運算不能用於money和smallmoney資料類型。此外,還可以指定字串常量或變數改變它們的輸出結果。
在SELECT語句中使用ALL|DISTINCT選項來顯示所有行(ALL)或重複資料刪除的行(DISTINCT),預設時為ALL。使用DISTINCT選項時,對於所有資料重複的SELECT列表數值只顯示一次。
SELECT DISTINCT job FROM TongFuHotel
(2)FROM子句
FROM子句指定SELECT語句查詢相關的表或視圖。最多可指定16個表或視圖,相互之間用逗號分隔。如果這些表或視圖屬於不同的資料庫,可用“資料庫.所有者名稱.對象”格式指定表或視圖。
在FROM子句中可為每個表或視圖指定一個別名,別名緊跟在對象名稱之後,用空格分隔,允許使用別名參考資料表中各列。
1 SELECT Name,Job2 FROM TongFuHotel t3 WHERE t.Age<30 AND t.Sex=‘男‘
(3)WHERE子句限定搜尋條件
①WHERE語句可包含條件運算子
a、比較子 >、<、>=、<=、=、<>、!>、!< (大小比較)
b、範圍運算子 BWTWEEN...AND、NOT BETWEEN...AND (判斷運算式值是否在指定範圍之內)
c、列表運算子 IN、NOT IN (判斷運算式值是否為列表中的指定項)
d、模式比對符 LIKE、NOT LIKE (判斷列植是否與指定的字元統配格式相符)
e、空值判斷符 IS NULL、NOT IS NULL (判斷運算式值是否為空白)
f、邏輯運算子 AND、OR、NOT (用於多條件的邏輯串連)
②WHERE語句可包含模式比對符
a、%:可匹配任意類型長度的字元
b、_:匹配單個任一字元,常用於限制運算式的字元長度
c、[]:指定一個字元、字串或範圍,要求所匹配對象為它們中的任一字元
d、[^]:取值與[]相同,但要求所匹配對象為指定字元以外的任一字元
參考文獻:精通C#資料庫編程.王華傑,黃山編著——北京:科學出版社,2003.10
基本SELECT語句(一)--學習筆記