SQL-server第三次实验(单表查询)

一、选择表中的若干列

1.查询经过计算的值
例3.19 查询全体学生的姓名及其出生年份

SELECT Sname,2021-Sage
FROM Student;

在这里插入图片描述
查询结果中第二列是没有列名的,仅是代表着一个算术表达式,还可以是字符串常量,函数等。
例3.20 查询全体学生的的姓名,出生年份和所在的院系,要求用小写字母表示系名。

SELECT Sname,'Year of Birth:',2014-Sage,LOWER(Sdept)
FROM Student;

在这里插入图片描述
也可以指定别名来改变查询结果的列标题

SELECT Sname NAME,'Year of Birth:'BIRTH,2014-Sage BIRTHDAY,LOWER(Sdept)DEPARTMENT
FROM Student;

lower是将输出结果都以小写输出,若想全以大写输出则用UPPER
在这里插入图片描述
这里就是让它从无列名到有列名。

二、选择表中的若干元组

1.消除取值重复的行
例3.21查询选修了课程的学生学号

SELECT Sno
FROM Sc;

在这里插入图片描述
可以看到有重复的值,这时就要用到DISTINCT去重

SELECT DISTINCT Sno
FROM Sc;

在这里插入图片描述
如果是将DISTINCT改为ALL的话,则结果与不写是相同的,都保留了重复的行。
在这里插入图片描述

2.查询满足条件的元组
例3.22查询计算机科学系全体学生的名单

SELECT Sname
FROM Student
WHERE Sdept='CS';

在这里插入图片描述
例3.23查询所有年龄在20岁以下的学生姓名及其年龄

SELECT Sname,Sage
FROM Student
WHERE Sage<20;

在这里插入图片描述
例3.24查询考试成绩不及格的学生的学号

SELECT DISTINCT Sno
FROM SC
WHERE Grade<60;

在这里插入图片描述
如果不加DISTINCT的话,一个学生有多门不及格就会出现重复的学号
在这里插入图片描述
例3.25查询年龄在20-23岁(包括20和23)之间的学生的姓名、系别和年龄
…between and 包含界限

SELECT  Sname,Sdept,Sage
FROM Student
WHERE Sage  BETWEEN 20 AND 23;

在这里插入图片描述
例3.26 查询年龄不在20-23之间的学生姓名、系别和年龄

SELECT  Sname,Sdept,Sage
FROM Student
WHERE Sage  NOT BETWEEN 20 AND 23;

在这里插入图片描述
例3.27(确定集合)谓词IN可以用来查找属性值属于指定集合的元组,逗号表示或。

SELECT  Sname,Ssex
FROM Student
WHERE Sdept IN('CS','MA','IS');

在这里插入图片描述
例3.28查询既不是计算机科学系,数学系,也不是信息系的学生的姓名和性别

SELECT Sname,Ssex
FROM Student
WHERE Sdept NOT IN('CS','MA','IS');

在这里插入图片描述
字符匹配
通配符%代表任意长度的字符串,-代表任意单个字符
例3.29查询学号为201215121的学生的详细情况

SELECT *
FROM Student
WHERE Sno like '201215121';/*like也可用=替代*/

在这里插入图片描述
例3.30查询所有姓李的学生的姓名、学号和性别

SELECT Sname,Sno,Ssex
FROM Student
WHERE Sname LIKE '李%';

在这里插入图片描述
例3.31 查询姓“欧阳”且全名为三个汉字的学生的姓名

SELECT Sname
FROM Student
WHERE Sname LIKE '欧阳_';

在这里插入图片描述
这里的实验结果并没有只出现三个字而是还出现了两个字,说明它的_通配符还可以表示NULL
例3.32查询名字中第二个字为“阳”的学生的姓名和学号

SELECT Sname,Sno
FROM Student
WHERE Sname LIKE '_阳%';

在这里插入图片描述
例3.33查询所有不姓刘的学生的姓名、学号和性别

SELECT Sname,Sno,Ssex
FROM Student
WHERE Sname NOT LIKE '刘%';

在这里插入图片描述
如果用户要查询的字符串本身就含有通配符%或_,这时就要使用SECAPE’<换码字符>'短语对通配符进行转义了
例3.34查询DB_Design课程的课程号和学分

SELECT Cno,Ccredit
FROM Course
WHERE Cname LIKE'DB\_Design'ESCAPE'\';

在这里插入图片描述
例3.35查询以“DB_开头,且倒数第三个字符为i的课程的详细情况

SELECT *
FROM Course
WHERE Cname LIKE'DB\_%i__'ESCAPE'\';

在这里插入图片描述
查询空值时必须使用NULL
例3.36查询缺少成绩的学生的学号和相应的课程号

SELECT Sno,Cno
FROM SC
WHERE Grade is NULL;

在这里插入图片描述
当把NULL改为空格或什么都不写,将出现错误
在这里插入图片描述
例3.37查询所有有成绩的学生学号和课程号

SELECT Sno,Cno
FROM SC
WHERE Grade is not NULL;

在这里插入图片描述
多重条件查询
and的优先级高于or
例3.38查询计算机科学系年龄在20岁以下的学生姓名

SELECT Sname
FROM Student
WHERE Sdept='CS'and Sage<20;

在这里插入图片描述

三、ORDER BY子句

默认是按升序排列
例3.39查询选修了2号课程的学生的学号及成绩,查询结果按分数的降序排列

SELECT Sno,Grade
FROM SC
where Cno=3
order by grade desc

在这里插入图片描述

四、聚集函数

只能用于select和group by中的having子句
例3.41查询学生总人数

SELECT * from Student;
SELECT count(*)//count是统计一列中值的个数
from Student;

在这里插入图片描述
例3.42查询选修了课程的学生人数

SELECT count(DISTINCT Sno)
from SC;

在这里插入图片描述
如果不加DISTINCT的话,查询结果将不去重显示7个
`实验开始前要确保表已经建好。
例3.43计算选修1号课程学生的平均成绩

SELECT avg(GRADE)
from SC
where Cno=1;

在这里插入图片描述
例3.45查询学生201215121选修课程的总学分数

SELECT sum(Ccredit)
from SC,Course
where Sno='201215121'and SC.Cno=Course.Cno;;
GROUP BY子句

它是将查询结果按某一列或多列进行分组,值相等的为一组
例3.46求各个课程号及相应的选课人数

SELECT Cno,count(Sno)NUM
from SC
group by Cno;

例3.47查询选修了两门以上的课程的学生学号

      student表

里插入图片描述
例3.47查询选修了两门以上课程的学生学号

SELECT Sno
from SC
group by Sno
having count(*)>2;//having和where效果相同

这次实验做的比较多,照着书做完之后自己再做还是会想不起来一些东西,需要课下多看多复习

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、实验目的 1.掌握SQL Server 2005的安装。 2.掌握SQL Server Management Studio的启动和使用。 3.掌握SQL Server 2005服务器的配置和注册。 4.掌握SQL Server 2005查询的基本使用。 5.掌握应用SQL Server Management Studio创建数据库的方法。 6.掌握应用SQL Server Management Studio修改和查看数据库的方法。 7.掌握应用SQL Server Management Studio删除数据库的方法。 8.掌握应用Transact-SQL语句创建数据库的方法。 9.掌握应用Transact-SQL修改和查看数据库的方法。 10.掌握通过Transact-SQL删除数据库的方法。 11.掌握SQL Server 2005数据库和操作系统物理文件的关系。 12.掌握数据库的分离和附加方法。 二、实验内容 1.完成SQL Server 2005开发版的安装。 提示:若计算机系统中已经安装有SQL Server 2005系统,则在安装时需要选择安装命名实例。安装过程中身份验证模式选择“混合模式”并设置sa账户的密码。 2.利用SQL Server配置管理器启动、停止SQL Server服务(包括默认实例和命名实例),配置SQL Server服务为自动启动。 3.利用SQL Server配置管理器配置进行SQL Server 2005网络配置,启用默认实例和命名实例的TCP/IP协议。 4.利用SQL Server外围配置器配置数据库引擎的服务及远程连接,设置为“本地连接和远程连接”,选择“同时使用TCP/IP和named pipes”。 5.利用SQL Server Management Studio注册安装的命名实例。 6.利用SQL Server Management Studio注册远程服务器。 提示:注册远程服务器时需要使用混合验证模式,利用sa账户和密码登录远程服务器。 7.启动SQL Server Management Studio,连接到服务器。新建一个查询,在其中输入如下代码: DECLARE @position int, @string char(5) SET @position = 1 SET @string = 'China' WHILE @position <= DATALENGTH(@string) BEGIN SELECT SUBSTRING(@string, @position, 1) 字符, ASCII(SUBSTRING(@string, @position, 1)) ASCII码 SET @position = @position + 1 END
一、实验目的 1.掌握SQL Server 2005的安装。 2.掌握SQL Server Management Studio的启动和使用。 3.掌握SQL Server 2005服务器的配置和注册。 4.掌握SQL Server 2005查询的基本使用。 5.掌握应用SQL Server Management Studio创建数据库的方法。 6.掌握应用SQL Server Management Studio修改和查看数据库的方法。 7.掌握应用SQL Server Management Studio删除数据库的方法。 8.掌握应用Transact-SQL语句创建数据库的方法。 9.掌握应用Transact-SQL修改和查看数据库的方法。 10.掌握通过Transact-SQL删除数据库的方法。 11.掌握SQL Server 2005数据库和操作系统物理文件的关系。 12.掌握数据库的分离和附加方法。 二、实验内容 1.完成SQL Server 2005开发版的安装。 提示:若计算机系统中已经安装有SQL Server 2005系统,则在安装时需要选择安装命名实例。安装过程中身份验证模式选择“混合模式”并设置sa账户的密码。 2.利用SQL Server配置管理器启动、停止SQL Server服务(包括默认实例和命名实例),配置SQL Server服务为自动启动。 3.利用SQL Server配置管理器配置进行SQL Server 2005网络配置,启用默认实例和命名实例的TCP/IP协议。 4.利用SQL Server外围配置器配置数据库引擎的服务及远程连接,设置为“本地连接和远程连接”,选择“同时使用TCP/IP和named pipes”。 5.利用SQL Server Management Studio注册安装的命名实例。 6.利用SQL Server Management Studio注册远程服务器。 提示:注册远程服务器时需要使用混合验证模式,利用sa账户和密码登录远程服务器。 7.启动SQL Server Management Studio,连接到服务器。新建一个查询,在其中输入如下代码: DECLARE @position int, @string char(5) SET @position = 1 SET @string = 'China' WHILE @position <= DATALENGTH(@string) BEGIN SELECT SUBSTRING(@string, @position, 1) 字符, ASCII(SUBSTRING(@string, @position, 1)) ASCII码 SET @position = @position + 1 END
辽 宁 工 业 大 学 《SQL server数据库设计实训》 报告 题目: 餐饮管理系统 院(系): 软件学院 专业班级: 电子商务(国际) 学 号: 学生姓名: 指导教师: 翟宝峰 教师职称: 副教授 起止时间:2011。09。03-2011。09。14 设计任务及评语 院(系):软件学院 教研室:软件教研室 "学 号 " "学生姓名 " "专业班级 "电子商务(国际)" "设计题目 " 餐饮管理系统 " " 设 计 任 务" " " " " " "要求根据管理信息系统及数据库设计原理,按照系统设计的步骤和规范,完成" " "各阶段的设计内容。 " " "需求分析具体实际,数据流图、数据字典、关系模型要规范。 " " "在sql server2000 " " "上实现数据库的模型建立(数据库、表的建立、完整性约束的实现、关系图 " " "、必要的存储过程及触发器的编程),并用VB实现简单的应用程序。 " " "设计过程中,要严格遵守设计的时间安排,听从指导教师的指导。正确地完成" " "上述内容,规范完整地撰写出设计报告. " "指导教师评语" " "及成绩 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "成绩: 指导教师签字: " " " " " "2012 年09月17日 " 目 录 第1章 设计目的与要求 1 1。1设计目的 1 1.2设计环境 1 1.3主要参考资料 1 1.4设计内容及要求 1 第2章 设计内容 2 2。1数据库设计 2 2。1.1需求分析 2 2.1.2概念设计 5 2.1.3逻辑设计 6 2.1.4物理设计 7 2。1。5 数据库实现 7 2.2程序设计 11 2.2.1概要设计 11 2.2.2程序实现 11 第3章 设计总结 14 参考文献 15 第1章 设计目的与要求 1.1设计目的 本设计专题是软件工程类专业的有关管理信息系统设计开发的一个重要环节,是本专 业学生必须学习和掌握的综合实践课程. 本实践课的主要目的是:(1)、掌握运用管理系统及数据库原理知识进行系统分析和 设计的方法;(2)掌握关系数据库的设计方法;(3)掌握SQL Server 2000技术应用;(4)掌握简单的数据库应用程序编写方法;(5)理解C/S模式结构。 1。2设计环境 硬件:处理器,Intel Pentium 166 MHz以上,内存:512M 以上,硬盘空间:8G 以上 软件:Windows XP需要软件:Microsoft Visual Basic 6。0,Microsoft SQL Server 2000 1。3主要参考资料 1。《管理信息系统》 黄梯云 高等教育出版社 2。《数据库系统概论》 萨师煊 高等教育出版社 3。《SQL Server 2000 数据库应用系统开发技术》朱如龙编,机械工业出版社。 4。《SQL Server 2000 数据库应用系统开发技术实验指导》朱如龙编,机械工业出版社 4设计内容及要求 一、内容 1。要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完 成各阶段的设计内容。 2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范 3.在sql server2000 上实现设计的数据库模型。 4.对应用程序进行概要设计。 5。用VB实现简单的应用程序编写。 二、要求 设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导.正确地完成上述 内容,规范完整地撰写出课程设计报告。 第2章 设计内容 2。1数据库设计 本数据库系统通过之前的需求分析,以SQL为后台,VB为前台设计了一个简单的餐饮 管理系统.通过概念设计,逻辑设计和物理设计的转换来实现了数据库文件。 2。1.1需求分析 本系统介绍了一般的计算机管理的餐饮服务程序,首先从各种相关的软件入手,分析 了这类软件的特点、发展历程,并对发展缓慢的原因进行了初步的调研。从以前的相关 软件的软肋着手,介绍了餐饮服务计算机软件的编程思路和基本方法。重点介绍了前台 营业,从第三者的角度即消费者的角度介绍了前台营业的操作流程 在酒店里建立一个餐饮服务系统对提高酒店的工作效率和增加酒店的效益都是有好处 的,它影响了酒店经营业绩,也使酒店的竞争能力提升。它的优势主要在于有效展示酒店 形象和服务,建立与客户良好的互动关系,高效管理销售过程,而且显著降低销售成本 、提高经济效益和管理水平,提高营业收入,使得利润最大化,如此可见餐饮服务系统给 酒店带来了可观的收入。 本餐饮管理系统主要实现对餐饮系统相关信息的管理,其中以日点单为中心,其中还 包括员工信息管理,员工所属部门信息的管理,房间台号以及房间类型的相关信息管理, 还包含了最基础的商品信

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值