版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、概述 SELECT语句的语法形式如下:SELECT 字段名列表FROM IN 外部数据库 WHERE GROUP BY HAVING 子句 ORDER BY ASC|DESC INTO第1页/共38页从FROM子句指定的基本表或视图中读取记录。如果有WHERE子句,根据WHERE子句的条件表达式,选择符合条件的记录。如果有GROUP BY 子句,根据GROUP BY 子句的条件表达式,对记录进行分组。如果有HAVING 子句,根据HAVING 子句的条件表达式,选择满足条件的分组结果。如果有ORDER BY 子句,根据ORDER BY 子句的条件表达式,将按指定的列的取值排序。最后根据SE
2、LECT 语句指定列,输出最终的结果。 第2页/共38页常用语句的用法: SELECT子句用于指定所选择的要查询的特定表中的列,它可以是星号(*)、表达式、列表、变量等。 FROM子句用于指定要查询的表或者视图,最多可以指定16个表或者视图,用逗号相互隔开。 WHERE子句用来限定查询的范围和条件。 GROUP BY子句是分组查询子句。 HAVING子句用于指定分组子句的条件。 INTO子句用于指定所要生成的新表的名称。第3页/共38页二、 SELECT语句查询 例:查看“医生基本情况表”中所有记录: SELECT * FROM 医生基本情况表 查看“医生基本情况表”中“姓名”和“职务”,其代
3、码如下: SELECT 姓名,职务 FROM 医生基本情况表第4页/共38页 查看表中最前部的记录SELECT TOP 5 * FROM 医生基本情况表第5页/共38页三、 使用FROM子句指定数据源(包含内、外连接) FROM语句用来指定被查询基本表或视图,使用该语句可以查询单独表的数据也可以查询联合表的数据,具体格式如下:FROM INNER|LEFT|RIGHT|FULL OUTERCROSSJOIN ON 第6页/共38页INNER表示内连接,是系统默认的连接方式。例1:查询科室表和医生基本情况表两个表中各科室的科室名称,医生姓名和职务。 SELECT 科室表.科室名称, 医生基本情况
4、表.姓名, 医生基本情况表.职务FROM 科室表 INNER JOIN 医生基本情况表ON 科室表.科室代码= 医生基本情况表.科室代码1内连接方式第7页/共38页第8页/共38页2外连接方式 OUTER表示外连接。外连接又分为左外连接(LEFT),右外连接(RIGHT),完全外连接(FULL). 左外连接的结果集中除了包括满足条件的行外,还包括左表所有的行。 右外连接的结果集中除了包括满足条件的行外,还包括右表所有的行。 完全外连接的结果集中除了包括满足条件的行外,还包括左右两表所有的行。第9页/共38页 LEFT外连接:改变例1的连接属性为LEFT外连接 SELECT 科室表.科室名称,
5、医生基本情况表.姓名, 医生基本情况表.职务 FROM 科室表 LEFT OUTER JOIN 医生基本情况表 ON 科室表.科室代码= 医生基本情况表.科室代码其中OUTER可以省略。第10页/共38页第11页/共38页 RIGHT外连接:改变例1的连接属性为RIGHT外连接 SELECT 科室表.科室名称, 医生基本情况表.姓名, 医生基本情况表.职务 FROM 科室表 RIGHT OUTER JOIN 医生基本情况表 ON 科室表.科室代码= 医生基本情况表.科室代码第12页/共38页第13页/共38页 WHERE语句是用来根据条件表达式来查询数据的语句。其基本格式如下: WHERE A
6、ND|OR|NOT. Condition:= =|!=|=|!=|=|!,=-,=,!=,!,!51000800005 AND 最高学历=研究生第16页/共38页第17页/共38页 例:在“医生数据库”中,查询1965年和1975年之间出生并且在“五官科”工作的医生信息: SELECT 科室表.科室名称, 医生基本情况表.姓名, 医生基本情况表.出生日期, 医生基本情况表.职务FROM 医生基本情况表 INNER JOIN 科室表ON 医生基本情况表.科室代码= 科室表.科室代码WHERE (医生基本情况表.出生日期 BETWEEN CONVERT(DATETIME, 1965-01-01)
7、AND CONVERT(DATETIME, 1976-12-31) AND (科室表.科室名称= 五官科) 第18页/共38页第19页/共38页 例:在医生基本情况表中,使用模糊查询, 查找姓“孙”的医生的信息。SELECT * FROM 医生基本情况表 WHERE 姓名 LIKE 孙%第20页/共38页第21页/共38页五、 使用ORDER BY 子句的连接 ORDER BY子句的作用是对SELECT语句返回的记录集进行排序,其语法代码如下: ORDER BY Order_by_expression -要排序的列 COLLATE collation_name -排序规则 ASC | DESC
8、 -升序或降序 ,.n 第22页/共38页按一个字段排序 例:查看医生基本情况表中的所有医生记录,并且按照医生工号排序:SELECT * FROM 医生数据库.dbo.医生基本情况表ORDER BY 医生工号 本例中省略了ASC关键字,程序默认为ASC。如果要按医生工号倒序排序的话,则用以下代码:SELECT * FROM 医生数据库.dbo.医生基本情况表ORDER BY 医生工号DESC第23页/共38页第24页/共38页按多个字段排序 例:查看医生基本情况表中的所有医生记录,并且按照姓名和科室代码降序排序:SELECT * FROM 医生数据库.dbo.医生基本情况表ORDER BY 姓
9、名 DESC,科室代码 DESC 在本例中,先是按照姓名降序排序,如果在姓名相同的情况下,则再按照科室代码降序排序。 第25页/共38页第26页/共38页六、 使用GROUP BY子句分组统计 Group by子句的作用是将依据设置的条件分成各个群组,同时在select子句中使用汇总函数进行数据汇总。 基本语法 GROUP BY ALL group_by_expression ,.n WITH CUBE | ROLLUP 第27页/共38页Group by的基本用法 例:统计医生基本情况表中每个科室的总人数,其代码如下:SELECT 科室代码,count(医生工号) as 总人数FROM 医生
10、数据库.dbo.医生基本情况表GROUP BY 科室代码第28页/共38页在Group by中使用表达式 使用Group by子句可以对表中的记录按子句后的条件分组,加上With cube会对Group by所列出的所有分组字段进行汇总运算。 使用GROUP BY子句应该注意如下几点(1)Group by子句里可以是字段名,也可以是包含字段值的表达式,但不能是汇总函数。第29页/共38页(2)在Select子句里,除了汇总函数之外,其他所有出现的字段一定要是在Group by子句里曾经出现过的字段才行。(3)在Select子句里不一定要出现汇总函数,但至少要用到Group by 分组依据里的一
11、项。(4)text, ntext, image, xml数据类型的字段不能作为Group by的分组依据。第30页/共38页 例:按出生年份统计医生基本情况表中的总人数:SELECT YEAR(出生日期) as 出生年份,count(医生工号) as 总人数FROM 医生数据库.dbo.医生基本情况表GROUP BY YEAR(出生日期)ORDER BY YEAR(出生日期)第31页/共38页第32页/共38页 例:在Group by子句中使用WITH CUBE对所有字段进行汇总统计医生基本情况表中每个科室的总人数,并进行汇总:SELECT 科室代码,count(医生工号) as 总人数FROM 医生数据库.dbo.医生基本情况表GROUP BY 科室代码WITH CUBE第33页/共38页第34页/共38页 例:按照出生年份统计医生基本情况表中的每个科室的总人数,并进行汇总:SELECT 科室代码,YEAR(出生日期) as 出生年份,count(医生工号) as 总人数FROM 医生数据库.dbo.医
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医院财务内部监督制度
- 公厕卫生监督制度
- 农商行贷款监督制度
- 叶酸管理群众监督制度
- 制造业卫生监督制度
- 公司工资监督制度模板
- 事故处理执法监督制度
- 中国行政立法监督制度
- 不属于古代行政监督制度
- 企业四项监督制度
- 2024老旧小区改造质量验收规范
- 湖南单招信息技术基础知识题库及答案
- 数字经济概论-完整全套教学课件
- 苏教版高中数学公式知识点汇总
- 代理诉讼赡养费授权委托书
- 现金盘点表完整版
- 复旦大学体育理论考试题库-基础题
- 体外放射分析-2 RIA与IRMA教材课件
- 节后复工安全教育培训 节后安全教育内容
- GB/T 35199-2017土方机械轮胎式装载机技术条件
- GB/T 14626-1993锻钢制螺纹管件
评论
0/150
提交评论