关系代数:1.在数据库ScoreDB中,查所有1992年及以后出生的女学生情况
σyear(birthday)>=1992∧sex='女'(Student)
2.在数据库ScoreDB中,查所有“蒙古族”学生的姓名和籍贯
∏studentName, native(σnation=‘蒙古族’(Student))
3.在数据库ScoreDB中,查所有2008级的“蒙古族”学生的姓名
∏studentName(σnation=‘蒙古族’(Student) ⋈σgrade=2008(Class))
=∏studentName(σStudent.classNo=Class.classNo(σnation='蒙古族'(Student)×σgrade=2008(Class)))
=∏studentName(σStudent.classNo=Class.classNo(σnation='蒙古族'∧grade=2008(Student×Class)))
=∏studentName(σnation='蒙古族'∧grade=2008∧Student.classNo=Class.classNo(Student×Class))
=∏studentName(σnation='蒙古族'∧grade=2008(σStudent.classNo=Class.classNo(Student×Class)))
=∏studentName(σnation='蒙古族'∧grade=2008(Student ⋈ Class))
SQL语言: 1.查询所有班级的全部信息。
SELECT classNo, className, classNum, grade, institute /SELECT *
FROM Class
WHERE grade=2007常用的sql查询语句有哪些
2.在学生 Student表中查询籍贯不是“南昌”或“上海”的同学姓名、籍贯和所属班级编号。
SELECT studentName, native, classNo
FROM Student
WHERE native NOT IN ('南昌', '上海')
(降序加多:ORDER BY native DESC)
3.在学生Student表中查询所有姓王且全名为3个汉字的同学学号和姓名
SELECT studentNo, studentName
FROM Student
WHERE studentName LIKE '王__'
4.在学生Student表中查询名字中不含有“福”的同学学号和姓名。
SELECT studentNo, studentName
FROM Student
WHERE studentName NOT LIKE '%福%'
5.在班级Class表中查询班级名称中含有“08_”符号的班级名称
SELECT className
FROM Class
WHERE className LIKE '%08\_%' ESCAPE '\'
6.在选课Score表中查询选修了“001”、“005”或“003”课程的同学学号、课程号和相应成绩
SELECT studentNo, courseNo, score
FROM Score
WHERE courseNo='001' OR courseNo='005' OR courseNo='003'
7.在Student表中查询1991年出生且籍贯为“汉族”的同学学号、姓名、出生日期。
SELECT studentNo, studentName, birthday
FROM Student
WHERE year(birthday)=1991 AND nation='汉族'
1. 查询所有班级的班级编号、班级名称和所属学院。
Select classNo ,className,institute
FROM Class
2. 查询所有班级的全部信息
SELECT calssNo,className,classNum,grade,institute ( SELECT *)
FROM class
3. 查询所有班级的所属学院、班级编号、和班级名称,要求中文显示列名。
SELECT institute 所属学院,classNo班级编号,className班级名称
From Class
4. 查询2007年级的班级编号、班级名称、所属学院。
Select classNo, className,institute
FROM Class
WHERE grade=2007
5.用sql语句分别创建class表、student表、course表、score表。
CREATE TABLE Course ( -- 定义课程表Course
courseNo char(3) NOT NULL , --课程号
courseName varchar(30) NOT NULL, --课程名
creditHour numeric(1) default 0 NOT NULL, --学分
courseHour tinyint default 0 NOT NULL, --课时数
priorCourse char(3) NULL, --先修课程
CONSTRAINT CoursePK PRIMARY KEY (courseNo),
FOREIGN KEY (priorCourse) REFERENCES Course(courseNo)
)
CREATE TABLE Class ( -- 定义班级表Class
classNo char(6) NOT NULL , --班级号
className varchar(30) NOT NULL, --班级名
institute varchar(30) NOT NULL, --所属学院
grade smallint default 0 NOT NULL, --年级
classNum tinyint NULL, --班级人数
CONSTRAINT ClassPK PRIMARY KEY (classNo)
)
CREATE TABLE Student ( -- 定义学生表Student
studentNo char(7) NOT NULL --学号
studentName varchar(20) NOT NULL , --姓名
sex char(2) NULL, --性别
birthday datetime NULL, --出生日期
native varchar(20) NULL, --籍贯
nation varchar(30) default '汉族' NULL, --民族
classNo char(6) NULL --所属班级
CONSTRAINT StudentPK PRIMARY KEY (studentNo),
CONSTRAINT StudentFK FOREIGN KEY (classNo)
REFERENCES Class(classNo)
)
CREATE TABLE Score ( -- 定义成绩表Score
studentNo char(7) NOT NULL , --学号
courseNo char(3) NOT NULL , --课程号
score numeric(5, 1) default 0 NOT NULL --成绩
CHECK( score BETWEEN 0.0 AND 100.0)
3. 查同时选修过“计算机原理”和“高等数学”两门课程的同学学号、姓名以及该同学所选修的所有课程的课程名和相应成绩,按学号(升序)、成绩(降序)排序输出。
SELECT a.studentNo, studentName, courseName, score
FROM Student a, Course b, Score c
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论