SQL查詢語句使用 |
|
jackkcg
站務副站長 發表:891 回覆:1050 積分:848 註冊:2002-03-23 發送簡訊給我 |
此為轉貼資料 SQL查詢語句使用 一、簡單查詢 簡單的Transact-SQL查詢只包括選擇列表、FROM子句和WHERE子句。它們分別說明所查詢列、查詢的表或視圖、以及搜索條件等。 例如,下面的語句查詢testtable表中姓名?"張三"的nickname欄位和email欄位。 SELECT nickname,email FROM testtable WHERE name='張三' (一)選擇列表 選擇列表(select_list)指出所查詢列,它可以是一組列名列表、星號、運算式、變數(包括局部變數和總體變數)等構成。 1、選擇所有列 例如,下面語句顯示testtable表中所有列的資料: SELECT * FROM testtable 2、選擇部分列並指定它們的顯示次序 查詢結果集合中資料的排列順序與選擇列表中所指定的列名排列順序相同。 例如: SELECT nickname,email FROM testtable 3、更改列標題 在選擇列表中,可重新指定列標題。定義格式?: 列標題=列名 列名 列標題 如果指定的列標題不是標準的識別字格式時,應使用引號定界符,例如,下列語句使用 漢字顯示列 標題: SELECT 昵稱=nickname,電子郵件=email FROM testtable 4、刪除重復行 SELECT語句中使用ALL或DISTINCT選項來顯示表中符合條件的所有行或刪除其中重復的資料行,默認?ALL。使用DISTINCT選項時,對於所有重復的資料行在SELECT返回的結果集合中只保留一行。 5、限制返回的行數 使用TOP n [PERCENT]選項限制返回的資料行數,TOP n說明返回n行,而TOP n PERCENT 時,說明n是表示一百分數,指定返回的行數等於總行數的百分之幾。 例如: SELECT TOP 2 * FROM testtable SELECT TOP 20 PERCENT * FROM testtable (二)FROM子句 FROM子句指定SELECT語句查詢及與查詢相關的表或視圖。在FROM子句中最多可指定256個表或視圖,它們之間用逗號分隔。 在FROM子句同時指定多個表或視圖時,如果選擇列表中存在同名列,這時應使用物件名限定這些列所屬的表或視圖。例如在usertable和citytable表中同時存在cityid列,在查詢兩個表中的cityid時應使用下面語句格式加以限定: SELECT username,citytable.cityid FROM usertable,citytable WHERE usertable.cityid=citytable.cityid 在FROM子句中可用以下兩種格式?表或視圖指定別名: 表名 as 別名 表名 別名 例如上面語句可用表的別名格式表示?: SELECT username,b.cityid FROM usertable a,citytable b WHERE a.cityid=b.cityid SELECT不僅能從表或視圖中檢索資料,它還能夠從其他查詢語句所返回的結果集合中查詢資料。 例如: SELECT a.au_fname+a.au_lname FROM authors a,titleauthor ta (SELECT title_id,title FROM titles WHERE ytd_sales> 10000 ) AS t WHERE a.au_id=ta.au_id AND ta.title_id=t.title_id 此例中,將SELECT返回的結果集合給予一別名t,然後再從中檢索資料。 (三)使用WHERE子句設置查詢條件 WHERE子句設置查詢條件,過濾掉不需要的資料行。例如下面語句查詢年齡大於20的資料 : SELECT * FROM usertable WHERE age> 20 WHERE子句可包括各種條件運算符: 比較運算符(大小比較):> 、> =、=、< 、< =、< > 、!> 、!< 範圍運算符(運算式值是否在指定的範圍):BETWEEN…AND…
NOT BETWEEN…AND… 列表運算符(判斷運算式是否?列表中的指定項):IN (項1,項2……)NOT IN (項1,項2……) 模式匹配符(判斷值是否與指定的字元通配格式相符):LIKE、NOT LIKE 空值判斷符(判斷運算式是否?空):IS NULL、NOT IS NULL 邏輯運算符(用於多條件的邏輯連接):NOT、AND、OR 1、範圍運算符例:age BETWEEN 10 AND 30相當於age> =10 AND age< =30 2、列表運算符例:country IN ('Germany','China') 3、模式匹配符例:常用於模糊查找,它判斷列值是否與指定的字串格式相匹配。可用 於char、varchar、text、ntext、datetime和smalldatetime等類型查詢。 可使用以下通配字元: 百分號%:可匹配任意類型和長度的字元,如果是中文,請使用兩個百分號即%%。 下劃線_:匹配單個任意字元,它常用來限制運算式的字元長度。 方括號[]:指定一個字元、字串或範圍,要求所匹配物件?它們中的任一個。 :其取值也[] 相同,但它要求所匹配物件?指定字元以外的任一個字元。 例如: 限制以> 、> =、< =、< 、!> 、!< 和< > 。
------
********************************************************** 哈哈&兵燹 最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好 Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知 K.表Knowlege 知識,就是本站的標語:Open our mind |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |