电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

SQL Server 7.0 入門(三)

瀏覽:143日期:2023-10-28 09:15:43
數據排序;;;;;;;ORDER BY子句按指定的順序對數據排序(ordering data)。它要求一個列名字列表或非負整數列表來指定列的位置。分別用ASC代表升序,DESC代表降序,默認為ASC。限制返回行的數目;;;;;;;不使用WHERE子句而限制結果中的行數是可能的。“TOP”子句能按指定數目或百分值來限制行數。數據分組和計算聚合函數;;;;;;;聚合(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和HAVINGHAVING子句用來向使用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 JOININNER 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 JOINRight 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>]ENDInput_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’;ENDFROM authorsUNION;;;;;;;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一起使用。
標簽: Sql Server 數據庫
主站蜘蛛池模板: 北京浩云律师事务所-企业法律顾问_破产清算等公司法律服务 | 膜结构停车棚-自行车棚-膜结构汽车棚加工安装厂家幸福膜结构 | 编织人生 - 权威手工编织网站,编织爱好者学习毛衣编织的门户网站,织毛衣就上编织人生网-编织人生 | 无纺布包装机|径向缠绕包装机|缠绕膜打包机-上海晏陵智能设备有限公司 | 河南橡胶接头厂家,河南波纹补偿器厂家,河南可曲挠橡胶软连接,河南套筒补偿器厂家-河南正大阀门 | 骨密度仪-骨密度测定仪-超声骨密度仪-骨龄测定仪-天津开发区圣鸿医疗器械有限公司 | 天津暖气片厂家_钢制散热器_天津铜铝复合暖气片_维尼罗散热器 | 科研ELISA试剂盒,酶联免疫检测试剂盒,昆虫_植物ELISA酶免试剂盒-上海仁捷生物科技有限公司 | 招商帮-一站式网络营销服务|互联网整合营销|网络推广代运营|信息流推广|招商帮企业招商好帮手|搜索营销推广|短视视频营销推广 | 大白菜官网,大白菜winpe,大白菜U盘装系统, u盘启动盘制作工具 | 便民信息网_家电维修,家电清洗,开锁换锁,本地家政公司 | 单锥双螺旋混合机_双螺旋锥形混合机-无锡新洋设备科技有限公司 | 精密线材测试仪-电线电缆检测仪-苏州欣硕电子科技有限公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | 挤塑板-XPS挤塑板-挤塑板设备厂家[襄阳欧格] | 罗茨真空机组,立式无油往复真空泵,2BV水环真空泵-力侨真空科技 | 青岛侦探_青岛侦探事务所_青岛劝退小三_青岛调查出轨取证公司_青岛婚外情取证-青岛探真调查事务所 | 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | BOE画框屏-触摸一体机-触控查询一体机-触摸屏一体机价格-厂家直销-触发电子 | 快速门厂家批发_PVC快速卷帘门_高速门_高速卷帘门-广州万盛门业 快干水泥|桥梁伸缩缝止水胶|伸缩缝装置生产厂家-广东广航交通科技有限公司 | 安平县鑫川金属丝网制品有限公司,防风抑尘网,单峰防风抑尘,不锈钢防风抑尘网,铝板防风抑尘网,镀铝锌防风抑尘网 | 粘度计NDJ-5S,粘度计NDJ-8S,越平水分测定仪-上海右一仪器有限公司 | 餐饮小吃技术培训-火锅串串香培训「何小胖培训」_成都点石成金[官网] | 铁盒_铁罐_马口铁盒_马口铁罐_铁盒生产厂家-广州博新制罐 | 双效节能浓缩器-热回流提取浓缩机组-温州市利宏机械 | 无锡装修装潢公司,口碑好的装饰装修公司-无锡索美装饰设计工程有限公司 | 圣才学习网-考研考证学习平台,提供万种考研考证电子书、题库、视频课程等考试资料 | 家德利门业,家居安全门,别墅大门 - 安徽家德利门业有限公司 | 二手回收公司_销毁处理公司_设备回收公司-找回收信息网 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 香蕉筛|直线|等厚|弧形|振动筛|香蕉筛厂家-洛阳隆中重工 | 金刚网,金刚网窗纱,不锈钢网,金刚网厂家- 河北萨邦丝网制品有限公司 | 运动木地板厂家,篮球场木地板品牌,体育场馆木地板安装 - 欧氏运动地板 | 胀套-锁紧盘-风电锁紧盘-蛇形联轴器「厂家」-瑞安市宝德隆机械配件有限公司 | 冷库安装厂家_杭州冷库_保鲜库建设-浙江克冷制冷设备有限公司 | 四川成人高考_四川成考报名网 | 撕碎机,撕破机,双轴破碎机-大件垃圾破碎机厂家 | 玻璃瓶厂家_酱菜瓶厂家_饮料瓶厂家_酒瓶厂家_玻璃杯厂家_徐州东明玻璃制品有限公司 | 齿式联轴器-弹性联轴器-联轴器厂家-江苏诺兴传动联轴器制造有限公司 | 蔬菜配送公司|蔬菜配送中心|食材配送|饭堂配送|食堂配送-首宏公司 | 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 |