文档详情

单表简单查询与多表联接查询设计.doc

发布:2025-03-22约2.87千字共5页下载文档
文本预览下载声明

南京晓庄学院

《数据库原理与应用》

课程实验报告

实验四查询设计实验

1.实验目的

了解查询的目的,掌握SELECT语句的基本语法和查询条件的表示方法。

掌握数据排序和数据联接查询的方法。

掌握SQLServer查询分析器的使用方法。

2.实验要求

针对“TM”数据库,在SQLServer查询分析器中,用T-SQL语句实现以下单表查询操作,并将将调试成功的T-SQL命令,填入实验报告中。

查询所有课程的详细情况。

查询来自江苏或山东的学生学号和姓名,并以中文名称显示输出的列名。

查询选修了课程的学生学号(一人选了多门课程的话,学号只显示一次)。

查询选修课程号学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

查询所有学生的学号、姓名和年龄。

查询选修课程号成绩在85-95之间的学生学号和成绩,并将成绩乘以0.7输出。

查询数学与信息技术学院(DEPT_ID为07)或物理与电子工程学院(DEPT_ID为09)姓张的学生的信息。。

查询所有核心课程(课程名中带*的)的情况。

查询缺少了成绩的学生的学号和课程号,查询结果按课程号升序排列。

在SQLServer查询分析器中,用T-SQL语句实现下列数据联接查询操作:

查询每个学生的情况以及他(她)所选修的课程。

查询学生的学号、姓名、选修的课程名及成绩。

查询选修C语言程序设计且成绩为85分以上的学生学号、姓名及成绩。

查询和学生柏文楠是同一个民族的学生(用自身联接实现)。

分别用等值联接和内联接查询有授课记录的老师的姓名。

用外联接查询所有老师的授课情况,输出老师的工号、姓名、职称、院系、担任的课程号和授课的学期,结果按院系和职称升序排列。如果该老师没有授课历史,在课程号和授课的学期中显示空值

在SQLServerManagementStudio中新建查询,完成以上查询命令的同时,熟悉SQL编辑器工具栏中各快捷按钮的作用。

按要求完成实验报告。

3.实验步骤、结果和总结实验步骤/结果

将调试成功的T-SQL语句写在下方(标明题号)。

(1)

a./*SELECT*

FROMCourse*/

b. SELECTS_ID,S_Name

FROMStudent

WHEREBirth_PlaceIN(江苏,山东)

c.SELECTDISTINCTS_ID

FROMSC

d.SELECTS_ID,EXAM_Grade

FROMSC

WHEREC_IDORDERBYEXAM_GradeDESC,S_IDASC;

e.SELECTS_ID,S_Name,year(getdate())-year(Date_of_Birth)

FROMStudent

f.SELECTEXAM_Grade*0.7,S_ID

FROMSC

WHEREC_IDANDEXAM_GradeBETWEEN85and95

g.SELECT*FROMStudent

WHERES_NAMELIKE刘%ANDDEPT_ID=07ORDEPT_ID=09

h.SELECT*FROMCourseWHEREC_NameLIKE%*%

i.SELECTS_ID,C_IDFROMSCWHEREEXAM_GradeISNULLORDERBYC_ID

(2)

SELECTS_ID,S_Name,Gender,Birth_Place,DEPT_ID,Class_ID,Course,C_NameFROMStudentjoinSConStudent.S_ID=SC,S_IDjoinCourseonCourse.C_ID=SC

SELECTS_ID,S_Name,C_Name,EXAM_GradeFROMStudentinnerjoinSConStudent.S_ID=SC.S_IDinnerjoinCourseonSC

SELECTS_ID,S_Name,EXAM_GradeFROMStudent,SC,CourseWHEREStudent.S_ID=SC.S_IDandCourse.C_ID=SC.C_IDandC_Name=C语言程序设计andEXAM_Grade=85

SELECTS_NameFROMStudentWHERENationality=(SELECTNationalityFROMStudentWHERES_Name=柏文楠)

SELECTDISTINCTT_Na

显示全部
相似文档