《数据查询》练习.docx
- 文档编号:2224803
- 上传时间:2022-10-28
- 格式:DOCX
- 页数:8
- 大小:18.58KB
《数据查询》练习.docx
《《数据查询》练习.docx》由会员分享,可在线阅读,更多相关《《数据查询》练习.docx(8页珍藏版)》请在冰豆网上搜索。
《数据查询》练习
《数据查询》练习
练习前,先附加“教务管理系统”和“人事管理系统”数据库
1、在“学生信息”表中,以3种不同的列名显示方式,查询学生信息。
select学号‘No’,姓名’Name’,性别‘Sex’,年级’Grade’,籍贯‘出生所在地’from学生信息
select学号as‘No’,姓名as’Name’,性别as‘Sex’,年级as’Grade’,籍贯as‘出生所在地’from学生信息
select‘No’=学号,’Name’=姓名,‘Sex’=性别,’Grade’=年级,‘出生所在地’=籍贯from学生信息
2、交换列的显示顺序,查询查询“学生信息”表中所有学生的学号、姓名、政治面貌和籍贯信息。
select学号,姓名,政治面貌,籍贯from学生信息
select政治面貌,学号,姓名,籍贯from学生信息
3、对比不使用DISTINCT和使用DISTINCT,查询“学生信息”表的“籍贯”列中的信息。
select籍贯from学生信息
selectdistinct籍贯from学生信息
4、查询列表中使用计算列。
1)查询“成绩表”中学生成绩信息,把成绩减少10分显示,同时显示编号、学号、调整前的成绩。
select编号,学号,‘调整前的成绩’=成绩,,‘调整后的成绩’=成绩-10from成绩表
2)查询“学生信息”表中学生学号、姓名、性别、民族和籍贯信息组,结果组合一列显示。
select学生信息=‘学号:
’+学号+’姓名:
’+姓名+’性别:
’+性别+’民族:
’+民族+‘籍贯:
’+籍贯from学生信息
5、WHERE子句的使用
1)从“学生信息”表中,查询出“籍贯”为“河南”的学生的学号、姓名、性别、民族和籍贯信息。
select学号,姓名,性别,民族,籍贯from学生信息where籍贯=‘河南’
2)从“学生信息”表中,查询出“籍贯”不是“河南”的学生的学号、姓名、性别、民族和籍贯信息。
select学号,姓名,性别,民族,籍贯from学生信息where籍贯!
=‘河南’
3)从“成绩表”中,查询出“成绩”小于60的学生的学号、姓名信息。
select学号,姓名from成绩表where成绩<60
4)从“学生信息”表中,查询出“籍贯”为“河南”并且“民族”为“汉”的学生的学号、姓名、性别、民族和籍贯信息。
select学号,姓名,性别,民族,籍贯from学生信息where籍贯=‘河南’and民族=‘汉’
5)从“学生信息”表中,查询出“籍贯”为“河南”或者“上海”的学生的学号、姓名、性别、民族和籍贯信息。
select学号,姓名,性别,民族,籍贯from学生信息where籍贯=‘河南’or籍贯=‘上海’
6)在“成绩表”中,查询出成绩在70与80之间的学生的编号、学号、课程编号和成绩信息。
select编号,学号,课程编号,成绩from成绩表where成绩between70and80
7)在“成绩表”中,查询出成绩不在70与80之间的学生的编号、学号、课程编号和成绩信息。
select编号,学号,课程编号,成绩from成绩表where成绩notbetween70and80
8)在“人事管理系统”数据库中查询从2004-05-01到2007-01-01的日期内入职的员工信息,包括员工编号、员工姓名、性别和入职时间。
select员工编号,员工姓名,性别,入职时间from员工信息where入职时间between‘2004-05-01’and‘2007-01-01’
9)从“学生信息”表中,查询出“籍贯”是“湖南”、“湖北”和“江西”的学生的学号、姓名、性别、民族和籍贯信息。
select学号,姓名,性别,民族,籍贯from学生信息where籍贯IN(‘湖南’,‘湖北’,’江西’)
10)从“学生信息”表中,查询出除“籍贯”是“湖南”、“湖北”和“江西”以外的学生的学号、姓名、性别、民族和籍贯信息。
select学号,姓名,性别,民族,籍贯from学生信息where籍贯NOTIN(‘湖南’,‘湖北’,’江西’)
11)查询“学生信息”表中姓名包含“红”字的学生的学号、姓名、性别、民族、籍贯和班级编号信息。
select学号,姓名,性别,民族,籍贯,班级编号from学生信息where姓名like‘%红%’
12)查询“学生信息”表中姓氏为“徐”的学生的学号、姓名、性别、民族、籍贯和班级编号信息。
select学号,姓名,性别,民族,籍贯,班级编号from学生信息where姓名like徐%’
13)查询“学生信息”表中姓名不包含“红”字的学生的学号、姓名、性别、民族、籍贯和班级编号信息。
select学号,姓名,性别,民族,籍贯,班级编号from学生信息where姓名like‘_[^红]_’
12)在“教务管理系统”数据库中,查询还未分配班主任的班级信息。
select*from班级信息where班主任isnull
在数据库commoditysell中操作
13)查询数据表ProductInfo中前5条记录。
14)从ProductInfo表中,查询产品名称为“丙电视机”的产品信息。
15)从ProductInfo表中,查询FactAddr为“四川绵阳”或“广东东莞”,同时StockAmount大于110的产品的ProdID、StockAmount和FactAddr信息,并且给列名分别取别名为产品编号、库存数量和厂商地址。
16)从ProductInfo表中,查询StockAmount在250和400(包含200和400)之间的产品的ProdName和StockAmount。
17)从ProductInfo表中,查询StockAmount在250和400(不包含200和400)之间的产品的ProdName和StockAmount。
18)从EmporiumSell表中,查询EmpID为“9602”和“0303”的商场销售的商品的ProdID、SellAmount和EmpID
19)从EmporiumSell表中,查询所有EmpID以“9”开头的商场的销售记录。
20)从ProductInfo表中,查询所有生产“洗衣机”的厂商的ProdName、ProdFact、FactAddr、FactTele和ProdID。
6、ORDERBY子句的使用
1)从数据库“教务管理系统”的“班级信息”表中,按照班级的人数进行降序排列。
select班级编号,年级,班级名称,人数,班主任from班级信息orderby人数desc
2)从数据库“教务管理系统”的“班级信息”表中,按照年级进行升序排列,年级相同的再按班级人数进行降序排列。
select班级编号,年级,班级名称,人数,班主任from班级信息orderby年级asc,人数desc
7、GROUPBY子句的使用
1)在“教务管理系统”数据库的“成绩”表中,查询考试课程数。
selectcount(distinct课程编号)from成绩表
2)在“教务管理系统”数据库的“成绩”表中,查询课程编号为’12’课程的总分。
selectsum(成绩)as总分from成绩表where课程编号='12'
3)在“教务管理系统”数据库的“成绩”表中,查询成绩最高的。
selectmax(成绩)as最高分from成绩表
4)在“教务管理系统”数据库的“成绩”表中,查询成绩最低的。
selectmin(成绩)as最低分from成绩表
5)在“教务管理系统”数据库的“班级信息”表中,按照年级查询出该年级各班的总人数以及班级的数量。
select年级,sum(人数)as年级总人数,count(班级编号)as班级数量from班级信息
groupby年级
6)在“教务管理系统”数据库的“成绩”表中,按照学号分组,查询学生课程成绩都大于等于80课程数。
select学号,count(课程编号)from成绩表
where成绩>=80
groupby学号
7)在“教务管理系统”数据库的“成绩”表中,按照学号分组,查询学生总成绩,要求总成绩大于等于150。
select学号,sum(成绩)as总分from成绩表
groupby学号
havingsum(成绩)>=150
8、COMPUTE和COMPUTEBY子句的使用
1)在“AdventureWorks”数据库的“SalesOrderHeader”表中,使用COMPUTE子句生成SalesOrderHeader表中SubTotal与TotalDue的和的合计。
SELECTCustomerID,OrderDate,SubTotal,TotalDue
FROM
WHERESalesPersonID=275
ORDERBYOrderDate
COMPUTESUM(SubTotal),SUM(TotalDue)
2)在“AdventureWorks”数据库的“SalesOrderHeader”表中,使用COMPUTE子句按销售人员生成SalesOrderHeader表中SubTotal与TotalDue的和的合计。
SELECTSalesPersonID,CustomerID,OrderDate,SubTotal,TotalDue
FROM
ORDERBYSalesPersonID,OrderDate
COMPUTESUM(SubTotal),SUM(TotalDue)BYSalesPersonID
在数据库commoditysell中操作
9、查询ProductInfo表中,所有“电视机”的平均价格。
10、查询EmporiumSell表中总的销售记录数。
11、查询EmporiumSell表中销售的商品种类。
12、查询ProductInfo中的所有产品的ProdName、UnitPrice,并按UnitPrice降序排列显示。
13、查询SaleerInfo表中SalerName、SalerAge、SalerSex和Salary,并按照SalerAge升序和Salary降序排序显示。
14、对SalerInfo表,求出商场员工按SalerAge分组的员工的平均Salary。
15、对SalerInfo表,求出商场员工按SalerAge分组的员工的平均Salary超过1500的记录。
17、多表查询
1)在“教务管理系统”数据库的“学生信息”表和“成绩”表中,查询出所有考试及格的学生的成绩信息,包括学生的学号、姓名、性别、年级、班级编号及考试成绩,并且按照成绩进行降序排列。
selectS.学号,S.姓名,S.性别,S.年级,S.班级编号,J.成绩from学生信息Sinnerjoin成绩表JonS.学号=J.学号
whereJ.成绩>=60
orderbyJ.成绩desc
2)从“教务管理系统”数据库中的“学生信息”和“班级信息”两表中,查询学生和对应的班级信息,要求返回的结果中包含学生的学号、姓名、性别和班级名称及年级。
selectS.学号,S.姓名,S.性别,C.班级名称,C.年级from学生信息Sinner
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据查询 数据 查询 练习