亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > SQL Server > 正文

SQL Server 7.0 入門(三)

2019-11-03 08:37:48
字體:
來源:轉載
供稿:網友
數據排序
       ORDER BY子句按指定的順序對數據排序(ordering data)。它要求一個列名字列表或非負整數列表來指定列的位置。分別用ASC代表升序,DESC代表降序,默認為ASC。

限制返回行的數目
       不使用WHERE子句而限制結果中的行數是可能的?!癟OP”子句能按指定數目或百分值來限制行數。

數據分組和計算聚合函數
       聚合(aggregate)函數計算表中數據的總和。SQL Server提供以下的聚合函數:
       · AVG 這個函數計算平均值。語法如下:
       AVG ([ALL | DISTINCT] exPRession)
       關鍵字DISTINCT只用來計算不同值的平均值,如果有許多重復值,這些值只計算一次,默認為ALL。
       Expression可以是涉及一列或多列的算術表達式。
       · MIN 這個函數查找所提供表達式中的最小值。語法如下:
       MIN (expression)
       · MAX 此函數的功能是在提供的表達式中查找最大值。語法如下:
       MAX (expression)
       注意: 如果地字符串類型使用MIN和MAX,則輸出依賴于為SQL Server定義的順序。MIN和MAX不能在位上使用。
    · SUM SUM計算所有數據值的和。語法如下:
       SUM ([ALL | DISTINCT] expression)
       注意:SUM和AVG只能用于數值數據類型。
    · COUNT 計算表達式值的數目。語法如下:
       COUNT ([ALL | DISTINCT] expression)
       COUNT有另一種用法,它可以返回被選擇的行數。
       如:SELECT NumRows = COUNT (*) FROM titles
       聚合函數忽略所有空值,但COUNT(*)除外。盡管所有聚合函數的計算基于無空值的情況,然而COUNT(*)計算所有的行(包括有空值的行)。

1.  GROUP BY子句
GROUP BY子句在被定義的數據的基礎上建立比較小的組,并且對每一個組進行聚合函數計算。換句話說,它產生每一組的總體信息。GROUP BY可以把多于一列當成組合列(Grouping Columns)。它總結組合列中不重復值的信息。
使用了GROUP BY子句的選擇列表中只能包含以下項:
· 常量值。
· 組合列。
· 表達式。每個表達式為每組返回一個值(如聚合函數)。如果一列除了在組合列中外,還在選擇列表中,則它有多個值給組合列的每一個不重復值,這種結構類型是不允許的。
2.  GROUP BY和HAVING
HAVING子句用來向使用GROUP BY子句的查詢中增加數據過濾準則。HAVING的用法和SELECT中的WHERE子句一樣。在一個包含GROUP BY子句的查詢中使用WHERE子句是可以的。HAVING和WHERE有相同的語法。HAVING和WHERE的不同這處是:
· 在WHERE子句中,在分組進行以前,去除不滿足條件的行,在HAVING子句中,在分組之后條件被應用。
· HAVING可在條件中包含聚合函數,但WHERE不能。
注意:GROUP BY和HAVING子句不能使用文本或圖像數據類型。
3.  COMPUTE BY子句
COMPUTE BY子句可以得到詳細或總的記錄。它把數據分成較小的組,然后為每組建立詳細記錄結果數據集(象SELECT),它也可為每組產生總的記錄(象GROUP BY)。
在COMPUT BY中,定義BY子句不是必要的。如果沒有定義BY子句,則認為整個表為一個組,并且只有兩個結果數據集產生,一個擁有所有詳細記錄,另一個只有一行,它擁有總記錄。
注意:當在COMPUTE中使用BY時,則要求在所有組合列中包含ORDER BY。

Cube和Rollup操作
    CUBE和ROLLUP操作可比簡單的GROUP BY產生更多的聚合值。在產生交叉標簽報告(cross tab reports)時,這些操作非常有用。如果查詢使用n個組合列,則有2n個計算聚合的組合。

從多個表中訪問數據
    我們已討論了如何訪問單個表中的數據。從多個表中訪問數據也是可能的。從多個表中訪問數據稱為連接表(joining a table)。
1、  CROSS JOIN(笛卡爾積)
CROSS JOIN是簡單地、不加任何約束條件地把表組合。CROSS JOIN后結果的行數是連接前兩個表行數的乘積。如果對兩個分別有好幾千行的表進行連接,則結果是不可想象的。
2、  INNER JOIN
INNER JOIN是組合兩個表最常用的方法。INNER JOIN是基于一個判別式進行的,這個判別式稱為連接條件。連接條件和WHERE子句一起定義。連接條件由來自兩個表中的列組成,并使用一個比較條件來對列的值進行比較。通過比較的值包含在結果數據集中,以下是Inner JOIN的語法:
語法1:(ANSI 92)
Select <select_list>
FROM <table1> INNER JOIN <table2>
ON <table1>.<column name> = <table2>.<column name>
語法2:
Select <select_list>
FROM <table1>,<table2> WHERE <table1>.<column name> = <table2>.<column name>
在FROM 子句中可為表定義別名,并在任何地方都可用別名代替真名。
注意:如果作為連接條件的列中有空值,則空值不能和任何值匹配,因此結果中不包含有空值的行。
3、  Left Outer JOIN
在Inner JOIN中,只有在兩個表中匹配的行才能在結果數據集中。但在Left Outer JOIN中,所有左邊表中的行都出現在結果數據集中,如果左邊表中的某一行在右邊表中沒有匹配的行,則以空值取代右邊表中的值和它連接。
語法如下:(ANSI 92)
Select <select_list>
FROM <table1> LEFT OUTER JOIN <table2>
ON <table1>.<column name> = <table2>.<column name>
4、  Right Outer JOIN
Right Out JOIN和Left Outer JOIN相似,不同的是把右邊的表作為外部表(所有右邊表中的行包含在結果數據集中)。
語法如下:
Select <select_list>
FROM <table1> RIGHT OUTER JOIN <table2>
ON <table1>.<column name> = <table2>.<column name>
5、  Full Outer JOIN
在Full Outer JOIN中,所有兩個表中的行都包含在結果數據集中。
語法如下:
Select <select_list>
FROM <table1> FULL OUTER JOIN <table2>
ON <table1>.<column name> = <table2>.<column name>

Case語句
    當對不同條件產生不同的結果值時,可使用Case語句。
    Case語句計算所有定義的條件,并按條件是否為真而返回結果。
語法如下:
CASE [<input_expression>]
WHEN <when_expression> THEN <result_expression>
[ELSE <else_expression>]
END
Input_expression是任何有效的SQL Server表達式或布爾表達式。
When_expression是任何有效的SQL Server表達式或布爾表達式。這個表達式和Input_expression比較,如果Input_expression沒有定義,則When_expression應該是一個布爾表達式。
Result_expression是任何有效的SQL Server表達式。如果When_expression和Input_expression的比較返回TRUE(如果定義了Input_expression)或When_expression的值為TRUE,則計算表達式,并返回其結果。否則計算Else_expression中的表達式,并返回其結果。
例如:
SELECT au_fname,au_lname,
State=CASE state
              WHEN ‘CA’ THEN ‘California’
              WHEN ‘KS’ THEN ‘Kansas’
         END
FROM authors


UNION

       UNION語句把兩個或多個查詢的結果組合成一個結果集。
       語法如下:
       SELECT <select_list>
       FROM <table_list>
       WHERE <join_condition>
       UNION [ALL]
       SELECT <table_list>
       FROM <table_list>
       WHERE <join_condition>
       ALL關鍵字指定重復的數據也將包含在最終結果數據集中。如果需要,一個查詢中可以有許多UNION語句。所有Select_list應該有相同數目的列,且是相同或兼容的數據類型。

Go命令       Go命令用來標志一個查詢批處理(query batch)的結束。查詢批處理是TSQL語句的集合,這些語句集合在一起執行。Go與Osql或SQL Server Query Analyzer一起使用。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩ab片| 久久久久久久一区二区三区| 欧美大片免费观看在线观看网站推荐| 久久国产一区二区三区| 中日韩美女免费视频网站在线观看| 亚洲精品视频在线观看视频| 国产成人欧美在线观看| 国产美女被下药99| 亚洲精品久久久久久久久| 中文字幕久久久| 成人欧美一区二区三区黑人| 在线成人激情视频| 韩国精品久久久999| 亚洲欧美激情在线视频| 日韩欧美精品免费在线| 欧美理论片在线观看| 日韩视频免费看| 欧美黑人性生活视频| 中文字幕一区电影| 国产婷婷97碰碰久久人人蜜臀| 欧美国产极速在线| 亚洲无线码在线一区观看| 国产亚洲激情在线| 午夜精品久久久久久99热软件| 国产激情999| 九九视频这里只有精品| 久久久久久久激情视频| 亚洲高清av在线| 久久亚洲电影天堂| 日韩亚洲综合在线| 国产精品夫妻激情| 北条麻妃一区二区三区中文字幕| 亚洲三级免费看| 亚洲欧美中文另类| 亚洲一区免费网站| 成人黄色免费看| 国产91在线高潮白浆在线观看| 欧美亚洲第一区| 尤物yw午夜国产精品视频| 92看片淫黄大片看国产片| 69av成年福利视频| 久久高清视频免费| 精品亚洲aⅴ在线观看| 亚洲自拍偷拍第一页| 久久免费视频网| 国产精品视频自在线| 91精品久久久久久久久不口人| 国产精品久久在线观看| 姬川优奈aav一区二区| 中文字幕欧美专区| 欧美日韩成人在线视频| 91久久久久久久久久久| 欧美一级黑人aaaaaaa做受| 日韩成人激情视频| 欧美一级高清免费播放| 亚洲成人性视频| 91人人爽人人爽人人精88v| 亚洲人午夜精品| 欧洲精品在线视频| 欧美精品在线免费观看| 在线观看国产精品91| 亚洲精品自拍偷拍| 欧美亚州一区二区三区| 欧美日韩在线观看视频| 欧美性生交大片免费| 日韩中文在线中文网在线观看| 色综合五月天导航| 国产精品福利小视频| 日韩电影中文字幕一区| 久久视频在线看| 91影院在线免费观看视频| 色午夜这里只有精品| 黑人狂躁日本妞一区二区三区| 4438全国亚洲精品在线观看视频| 国产精品亚洲一区二区三区| 精品国产拍在线观看| 亚洲欧美三级伦理| 成人在线精品视频| 日韩高清a**址| 国产精品扒开腿做爽爽爽的视频| 久久久久久中文| 91免费高清视频| 亚洲bt欧美bt日本bt| 久久精品国产亚洲7777| 久热精品视频在线免费观看| 日韩精品免费在线视频观看| 91精品久久久久久久久久久久久| 欧美成人剧情片在线观看| 日韩在线免费av| 亚洲精品一区二区网址| 国产精品v片在线观看不卡| 亚洲综合在线做性| 亚洲第一区第二区| 宅男66日本亚洲欧美视频| 亚洲欧美999| 97高清免费视频| 久久99青青精品免费观看| 91精品综合久久久久久五月天| 国产日产欧美a一级在线| 欧美大片网站在线观看| 久久久免费观看| 欧美一区二区.| 国产欧美亚洲视频| 国产午夜精品视频免费不卡69堂| 欧美成人亚洲成人日韩成人| 色天天综合狠狠色| 久久久精品一区二区三区| 国产成人av在线| 中文字幕精品国产| 国产成人极品视频| 欧美成人午夜免费视在线看片| zzijzzij亚洲日本成熟少妇| 国产精品激情av电影在线观看| 亚洲综合日韩在线| 亚洲免费视频在线观看| 国产在线视频不卡| 美女少妇精品视频| 亚洲午夜久久久久久久| 91高清视频免费| 亚洲午夜国产成人av电影男同| 久久九九热免费视频| 国产精品av电影| 91九色综合久久| 国产精品稀缺呦系列在线| 在线激情影院一区| 日韩av观看网址| 欧美一区二区三区……| 日韩亚洲欧美中文高清在线| 久久全国免费视频| 亚洲风情亚aⅴ在线发布| 欧美成人精品h版在线观看| 欧洲美女7788成人免费视频| 狠狠做深爱婷婷久久综合一区| 欧美视频在线观看免费| 日韩中文字幕av| 久久999免费视频| 在线观看不卡av| 91老司机在线| www.欧美三级电影.com| 亚洲天堂av女优| 国产成人福利夜色影视| 国产欧美精品一区二区三区-老狼| 欧美日韩国产123| 日韩激情视频在线| 一区二区三区回区在观看免费视频| 久久九九国产精品怡红院| 国产成人在线精品| 欧美午夜电影在线| 亚洲一区二区国产| 视频一区视频二区国产精品| 91精品国产自产在线观看永久| 日韩在线视频二区| 久久久久久av| 欧美极品少妇xxxxⅹ免费视频| 69av视频在线播放| 国内成人精品一区| 久久乐国产精品| 黑人狂躁日本妞一区二区三区| 久久精品国产亚洲精品| 欧美成人激情在线| 亚洲欧美三级在线| 热久久美女精品天天吊色| 欧美丰满少妇xxxx| 亚洲国产精彩中文乱码av在线播放|