基本SELECT語句(一)--學習筆記


  用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.Job
2 FROM TongFuHotel
3 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,Job
2 FROM TongFuHotel t
3 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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM