SQLServer数据查询基本方法的总结.doc_第1页
SQLServer数据查询基本方法的总结.doc_第2页
SQLServer数据查询基本方法的总结.doc_第3页
SQLServer数据查询基本方法的总结.doc_第4页
SQLServer数据查询基本方法的总结.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【IT168技术文档】首先创建一个简单的数据库作为示例数据库,数据库名称为school_db,里面有三张表 Department_TBL(DNO,DName),Class_TBL(CNO,CName,DNO),Student_TBL(SNO,SName,SSex,CNO)一 基本查询基本语法:select (查询列表|*) from (表列表)说明:“查询列表”可以是表的字段,表达式,函数。“表列表”可以包含多张表示例:查询所有学生的基本信息Select * from Student_TBL 二 where条件查询基本语法:select (查询列表|*) from (表列表) where (限制条件)说明:where关键字后面的限制条件不能包含聚合函数示例:查询所在班级编号是“003”的学生的基本信息Select * from Student_TBL where CNO=003 三 关键字in的使用基本语法:select (查询列表|*) from (表列表) where (字段名) in (值集合)说明:in关键字的作用是查询某一字段是否在一个集合中,一般在where语句中使用示例:查询学号为23,34,35,40 学生的信息Select * from Student_TBL where SNO in (23,34,35,40) 四 between和 Not between的使用基本语法:select (查询列表|*) from (表列表) where (字段名) between|not between 值1 AND 值2说明:判断某个字段的值是否在一个范围之内示例:查询所有学号大于5小于30的学生的信息Select * from Student_TBL where SNO between 5 and 30 五 消除结果集中的重复行基本语法:select distinct column1, from (表列表)说明:去除结果集中跟在distinct关键字后面所有字段的值相等的记录示例:查询所有学生的信息,删除名字相同的多余行Select distinct column1, from Student_TBL 六 返回指定的行数(百分率)基本语法:select top n percent(column1,) from (表列表)说明:n为要返回的行数,若含有percent关键字则按百分比返回,则此时n必须在0100之间,若查询语句中含有order by 则先对查询结果进行排序,再执行筛选示例:返回前十名学生的基本信息Select top 10 * from Student_TBL 返回前百分之十的学生的基本信息Select top 10 percent * from Student_TBL 七 改变查询标题基本语法:select 自定义标题=column1,. From (表列表),select column1 自定义标题,. From (表列表),select column1 as 自定义标题, from (表列表)说明:改变的只是查询结果的标题,并没有改变表的标题示例:查询学生的基本信息,SNO,SName,CNO分别用“学号”,“姓名”,”所属班级”显示、这里只使用第三种方法演示了Select 学号 as SNO,姓名 as SName,所属班级 as CNO from Student_TBL八 在查询结果中显示字符串基本语法:在select 语句中,将增加的字符串用单引号括起来然后和列的名字写在一起,中间用逗号分开示例:查询所有学生信息,显示的结果的形式是“学号+“我的姓名是+”性命+班级编号”Select SNO,我的姓名是,SName,CNO from Student_TBL九 order by的使用基本语法:select * from table_Name where. order by column1 ascdesc 说明:order by 后面可以指定多个列,默认是按升序方式排列的,order by 放在where 语句之后示例:查询所有学好大于23号的学生信息,并按学号的降序排列Select * from Student_TBL where SNO23 order by SNO desc 十 使用Like实现模糊查询基本语法:select * from table_Name where column like (匹配条件)说明:“%”匹配任意长度的(长度可以为0)字符串,“_”匹配任意单个字符,“”:匹配所给定范围或集合中的任意单个字符,“”匹配所给定的不在所给定的集合或范围中的任意单个字符,通配符或字符串必须用单引号括起来示例:查询所有姓李的同学地信息Select * from Student_TBL where SName like 李% 查询所有学生名字中第二个字为“冰”的同学的信息Select * from Student_TBL where SName like _冰% 查询所有编号中含有e,t,y字符的班级信息Select * from Class_TBL where CNO like e,t,y 查询所有编号中不含有e,t,y字符的班级信息Select * from Class_TBL where CNO like e,t,y 十一 使用is null基本语法:select * from table_Name where column is null 说明:查询指定列为输入数据的数据行,通常用在where语句中示例:查询还没有分配班级的学生的信息十二 使用compute进行计算基本语法:select * from table_name where 查询条件 compute 聚合函数说明:用来计算总计或进行分组小计,总计或小计值作为附加行出现在查询结果中示例:计算在编号为001班级的学生的信息并统计该班有多少个学生Select * from Student_TBL where CNO=001 compute count(*) 十三 使用compute by分组查询结果基本语法:select * from table_Name where. order by column compute 聚合函数 by column说明:在使用compute by之前必须先使用order by 对要进行分组的列进行排序,注意,在oerder by 中进行排序的列的数量和顺序必须和compute by 后的项一样示例:根据不同班级分组统计各个班级学生的信息Select * from Student_TBL order by CNO compute count(SNO) by CNO 十四 使用group by基本语法:select * from table_name where group by column说明:在select 子句中使用聚合函数时,group by计算每组的汇总值,使用group by子句时,在select 子句中出现的列名或者出现在聚合函数中,或者出现在group by 子句后面,否则会抱错,另外group by后面还可以恩 with cube|rollup,示例:统计每个班级有多少学生,不显示学生的信息,只显示统计信息Select CNO,count(SNO) from Student_TBL group by CNO 十五使用having语句基本语法:select * from table_name where group by column having 说明:having子句用于限定对组或者聚合函数的查询条件,该子句常用于group by 子句后面,在查询结果分组后对组判断是否满足查询条件,在分组之前可以用where语句判断查询条件,使用where比使用having更有效,因为它先将不满足条件的行过滤掉,从而减少了要进行分组的行数示例:分组统计除编号为001外所有班级学生的人数Select CNO,count(SNO) from Student_TBL group by CNO having CNO001 十六 子查询基本语法:说明:子查询是在查询中包含另一个查询的查询,可以使用子查询代替表达式,自查询只能返回一列数,有时只返回但个值示例:查询班级人数大于平均班级人数的班级Select * from Class_TBL where (select count(*) from student where CNO=Class_TBL.CNO)(select count(*) from Student_TBL)/(十七 使用union运算符合并多个查询结果基本语法:select column1 from table1_name union select column2 from table2_name 说明:所有查询中的列数和列的顺序必须相同,所有查询中按顺序对应列的数据类型必须相同或兼容,如果希望重新排序多个查询结果的合并结果,则在最后的select 语句中使用order by子句十八 查询多个表或视图的信息基本语法:select column1,column2, from talbe1,table2,说明:在涉及多表查询时必须使用where语句给出多表之间的连接条件,对来自N各表或视图查询要写出N-1 个连接条件示例:查询每个学生所在的系部的名称,班级的名称和姓名Select DName,CName,SName from Student_TBL S,Class_TBL C,Department_TBL Dwher

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论