实验4:简单查询语句及操纵语句(1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四数据简单查询及操纵语句
【实验目的与要求】
1、熟练掌握SELECT 语句的基本语法格式;
2、熟练掌握使用SQL语句进行单表查询,掌握GROUP BY子句、HA VING 子句和集
函数;
3、熟练掌握使用SQL标准语句和T-SQL扩展语句进行连接查询。
【实验内容】
4.0实验准备
本实验将用到实验2中的CPXS数据库、实验3中数据库EDUC数据库以及相应的表及数据,若上述数据库及表尚未创建,或数据尚未录入,则请先完成之。
4.1在实验2中的产品销售数据库CPXS数据库完成以下简单查询
⏹查询各种产品的产品编号、产品名称和价格。
写出对应SQL语句并给出查询结果:
select 产品编号,产品名称,价格
from CP
⏹查询地区在“南京”的客户编号和客户名称,结果中各列的标题分别指
定为:Customer_id和Customer_name。
写出对应SQL语句并给出查询结果:
select 客户编号 Customer_id,客户名称 Customer_name
FROM XSS
WHERE 地区='南京'
⏹求各产品编号、名称和产品总值。
写出对应SQL语句并给出查询结果:
select 产品编号,产品名称,价格*库存量产品总值
from CP
⏹查询至少购买了至少一种产品的客户编号(不重复)。
写出对应SQL语句并给出查询结果:
select distinct 客户编号
from CPXSB
where 数量>=1
⏹查询价格在1000-2000的产品信息,并依价格由高到低的顺序排序。
(请使用Between…and和算术比较运算符分别实现)
写出对应SQL语句并给出查询结果:
(1)
select 产品名称
from CP
where 价格 between 1000 and 2000
order by 价格 desc
(2)
select 产品名称
from CP
where 价格>= 1000 and 价格<= 2000
order by 价格 desc
⏹查询产品名称含有”空调”二字的产品情况。
写出对应SQL语句并给出查询结果:
select 产品名称
from CP
where 产品名称 like '%空调%'
4.2 使用分组和聚集函数
进行以下实验前,请先将CPXSB表数据修改如下图所示:
完成如下查询:
计算所有产品总价格。
写出对应SQL语句并给出查询结果:
select SUM(数量*销售额) 产品总价格
from CPXSB
求各种产品2004年3月18日销售额。
select 销售额
from CPXSB
where 销售日期='2004-3-18'
求购买二种以上产品的客户编号。
写出对应SQL语句并给出查询结果:
求各产品的产品编号和销售总额:
写出对应SQL语句并给出查询结果:
select sum(数量*销售额) 销售总额,产品编号
from CPXSB
group by 产品编号
查询销售总额在9000元以上的产品编号和销售总额。
select sum(数量*销售额) 销售总额,产品编号
from CPXSB
group by 产品编号
having sum(数量*销售额)>9000
4.3 在实验3中的EDUC数据库的Student表上完成如下SQL语句(等学到数据操纵语句后再做此部分)(同学们未做)
➢对于student表,将所有专业号为‘001’的,并且入学年份为2006的学生,或是专业号为‘003’,并且年龄小于20岁的学生的班级号改为‘001’。
➢对于student表,删掉所有年龄小于20岁,并且专业号为‘003’的学生的记录。
➢对于student表,插入一条新记录,它的具体信息为,学号:2007110011、姓名:张三、性别:男、出生日期:19880808、院系编号:‘001’、专业编号:‘001’、班级号:‘001’、入学时间:20070901。
➢对于student表,将入学时间最晚的学生和年龄最小的学生的联系方式去掉。
➢对于student表,将平均年龄最小的一个院系的院系编号改为‘008’
➢求计算机系的学生学号和姓名;
➢求选修了课程的学生学号;
➢求选修C1 课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列;
➢求选修课程C1 且成绩在80-90 之间的学生学号和成绩,并将成绩乘以系数0.75 输出;➢求计算机系和数学系的姓张的学生的信息;
➢求缺少了成绩的学生的学号和课程号。
➢将2000以后的成绩大于90分的学生成绩存入永久成绩表;将2000年以前的成绩存入临时成绩表中。