资源描述:
《sql server 2000程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、SQLServer2000程序设计主题:数据查询及分类汇总朱士明安徽电子信息职业技术学院1数据的查询简单查询命令select*from<表名>例:有一学生基本信息表,其结构如下:createtablexs(学号char(6)notnull,姓名char(8)notnull,专业名char(10),性别bitnotnull,出生时间smalldatetime,入学时间smalldatetimenotnulldefault(getdate()),总学分decimal(4,1),备注text)Select*fromxs2数据的简单查询2。选取前n个
2、数据——选取结果集中前n行数据例:查看xs表中总分在50分以上的前5名学生情况selecttop5*fromxswhere总学分>=50一般若需排序,则命令:selecttop5*fromxswhere总学分>=50orderby总学分desc注:withties选项的作用33。Select结果集中的列可以是*,也可以是以下的情况•可以是列名例1:select学号as学生学号,姓名,专业名fromxs数据的简单查询•可以是别名例2:查看学生的姓名,专业名,出生年份select姓名,专业名,datename(year,出生时间)+‘年’as出生
3、年份fromxs•可以是表达式例3:查看学生的姓名,性别,专业名。其中:值为0的为‘女’,1代表‘男’select学号,姓名,case性别when1then'男'when0then'女'endas性别,专业名fromxs此为简单的case语句4数据的简单查询select学号,姓名,casewhen总学分>=50then'良好'when总学分>=45then'中'when总学分>=40then‘合格’else‘不合格’endas成绩,专业名fromxs例4:查看学生的姓名,成绩,专业名。其中:成绩显示为:当总学分>=50时显示为‘良好’,45-
4、--49则显示为‘中’,40---44显示为‘合格’。此为布尔case语句5数据的简单查询4。Where条件条件表达式可以是由比较运算符构成,还可以由and、or、not运算符构成,还可以是between、in、like和is符号。4.1Between的使用:查询2001年入学学生学号及姓名select学号,姓名fromxswhere入学时间between'2001-1-1'and'2001-12-31'4.2in的使用:查询专业为“计算机”“‘电气工程”的学生学号及姓名select学号,姓名fromxswhere专业名in('计算机','电
5、气工程')或:查询专业不为“计算机”、“‘电气工程”的学生学号及姓名select学号,姓名fromxswhere专业名notin('计算机','电气工程')6数据的简单查询4.3like的使用:使用通配符在字符串内查找指定的模式例:查找所有学生学号最后一位为‘1’或‘2’的学生学号、姓名及专业名。select学号,姓名,专业名fromxswhere学号like'%[1-2]'例:查找所有姓’王’的学生学号、姓名及专业名。select学号,姓名,专业名fromxswhere姓名like'王%'通配符例子描述%‘able’like‘a%’任意多个
6、字符_‘able’like‘abl_’单个字符[]‘a’like‘[a-g]’匹配指定范围或集合中的任意单个字符[^]‘a’like’[^w-z]’匹配不属于指定范围或集合中的任意单个字符7数据的简单查询----排序4.4orderby的使用:对结果集排序。2。也可以使用表达式指定排序•select学号,姓名,性别,专业名,总学分fromxsorderby专业名+姓名•select学号,姓名,性别,专业名,总学分fromxsorderby专业名+cast(总学分asvarchar(6))1。使用列名指定排序顺序按总学分升序排列,当总学分相同时
7、,按性别的值升序排列:select学号,姓名,性别,专业名,总学分fromxsorderby总学分,性别3。使用别名指定排序顺序4。使用列名指定排序顺序8数据的查询----分组与总汇1.聚合函数的使用:常用的聚合函数如下聚合函数支持的数据类型描述Sum()数字对指定列中的所有非空值求总和Avg()数字对指定列中的所有非空值求总和Min()数字、字符、datetime返回指定列中的相应类型的最小值Max()数字、字符、datetime返回指定列中的相应类型的最大值Count(*)任意基于行的数据类型统计结果集中全部记录行的数量(个数)以下给出简
8、单的汇总例子,说明聚合函数的使用。例.对表xs中的总学分,求所有学生的平均学分。selectavg(总学分)as平均学分fromxs例.对表xs中的总学分,求计算机