数据库题库 SQL数据库题目
其实数据库题库的问题并不复杂,但是又很多的朋友都不太了解SQL数据库题目,因此呢,今天小编就来为大家分享数据库题库的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
求解数据库习题
1.传递函数依赖
2.表之间的关联就是通过主键与外键作为纽带实现的。
3.Having子句必须跟在_ group by __子句之后。
4.在一个关系中,每一个数据都可看成独立的数据项。
5.类具有多态性、封装性__和__继承性 __。
1.数据模型包含哪三个方面的要素?
答:数据结构、数据操作、完整性约束条件
3.类与对象的根本区别是什么?对象有哪3个要素?
这个看oyopen的回答
已知三个关系模式:
职工 S(职工号,姓名,性别)
工程 P(工程号,工程名称)
施工 SP(职工号,工程号,酬金)
(1).写出SQL语句,检索参加工程号为〃P1〃,且酬金最高的职工号。
select工程号 from sp where工程号='P1' AND SP.工程号=SP.MAX(酬金);
(2).写出SQL语句,检索参加3个以上工程的职工号。
select职工号 from sp where P.工程号>=3;
(3).已知关系代数表达式:
∏姓名,酬金(σ工程名称=〃立交桥〃(S SP P))
用SQL语句实现这个关系代数表达式。
(4).创建一个查询职工总酬金的视图SV,SV的属性有职工号和总酬金。
create view SV as select(职工号 char(8),总酬金 char(8));
谁能帮我做下这些数据库题目。谢谢。
###某学校数据库练习
#三个表:学生表: edu_students班级表: edu_class系表: edu_department
##(1)找出所有姓李的学生,并按其年龄由小到大排序
SELECT* FROM edu_students WHERE student_name LIKE'李%' ORDER BY age;
##(2)列出所有开设超过两个专业的系的名字
SELECT x.department_name FROM(
SELECT c.department_name,count(c.department_name) num
FROM edu_class c GROUP BY c.department_name) x
WHERE x.num>= 2;
##(3)列出学生数人数大于等于2的系的编号和名称
SELECT x.department_id,x.department_name FROM(
SELECT d.department_id,d.department_name,count(d.department_name) num FROM edu_students s
LEFT JOIN edu_class c ON s.class_id= c.class_id
LEFT JOIN edu_department d ON d.department_name= c.department_name
GROUP BY d.department_name) x
WHERE x.num>= 2;
##4、学校又新增加一个物理系,编号006
INSERT INTO edu_department(department_id,department_name) values('006','物理');
##5、学生张三转到化学系111班,请更新相关的表
UPDATE edu_students SET class_id= 111 WHERE student_name='张三';
SQL 数据库,求解答。
1.阅读程序,说明它们的功能
use master
go
create database jxgl on(name=jxgldata1,filename=’c:\jxgl_data.mdf’, Size=5mb,maxsize=100mb,filegrowth=5mb)
go
创建一个名字为 jxgl的数据库,数据文件存储在 c:\jxgl_data.mdf
文件初始的大小为5mb
随着数据量的增加,如果文件空间不足了,会自动增长,每次增长的幅度为5MB
最大增长到 100MB
2.阅读程序,说明它们的功能
use jxgl
go
select* from student
检索 jxgl数据库下面的 student表的所有数据。
3.阅读程序,说明它们的功能
use jxgl
go
select sno,avg(grade) from sc group by sno
检索 jxgl数据库下面的 sc表
按 sno分组,求 grade的平均值
4.阅读程序,说明它们的功能
use library
go
update readcatgory set借书数量=15,借书期限=借书期限+5 where种类名称=‘一类读者’
go
更新 library数据库下面的 readcatgory表
将所有种类名称为一类读者的数据,将借书数量更新为 15,借书期限在原有的基础上,增加5。
5.阅读程序,说明它们的功能
use library
go
select出版社,count(出版社) as图书数量 from books group by出版社 having count(出版社)>10
go
检索 library数据库下的 books表
按出版社分组,查询每个出版社的出版的图书总数量
如果这个出版社出版的图书总数量在10本以下(含10本),那么不显示。
六、设计题。(共20分)
现有关系数据库如下:
数据库名:学籍管理数据库
学生表(学号 char(6),姓名 char(8),性别 char(2),出生日期 datetime)
课程表(课程编号 char(2),课程名称 char(20),任课教师 char(10))
选课表(学号 char(6),课程编号 char(2),成绩 tinyint)
用SQL语言实现下列功能的sql语句代码:
1.创建数据表“选课表”代码。(4分)
选课表(学号 char(6),课程编号 char(2),成绩 tinyint)
要求使用:外键(学号),非空(学号、课程编号)。-------(提示词:foreign key,references)
CRETAE TABLE选课表(
学号 char(6) NOT NULL,
课程编号 char(2) NOT NULL,
成绩 tinyint,
FOREIGN KEY(学号) REFERENCES学生表,
FOREIGN KEY(课程编号) REFERENCES课程表
);
2.从选课表中查询每位学生选课的最高分、最低分、平均分。(4分)
要求:分别使用函数max(),min(),avg()。
SELECT
学号,
MAX(成绩) AS最高分,
MAX(成绩) AS最低分,
MAX(成绩) AS平均分
FROM
选课表
GROUP BY
学号
3.创建视图“学生选课信息视图”代码。(4分)
学生选课信息视图(姓名,课程编号,成绩)
CREATE VIEW学生选课信息视图
AS
SELECT
学生表.姓名,
选课表.课程编号,
选课表.成绩
FROM
学生表 JOIN选课表 ON(学生表.学号=选课表.学号)
4.请用联接查询实现查询选修过“李明”老师讲授课程的所有学生姓名(4分)
SELECT
学生表.姓名
FROM
课程表,选课表,学生表
WHERE
学生表.学号=选课表.学号
AND课程表.课程编号=选课表.课程编号
AND课程表.任课教师='李明'
5.请用嵌套查询实现查询选修过“李明”老师讲授课程的所有学生姓名(4分)
SELECT
学生表.姓名
FROM
学生表
WHERE
学生表.学号 IN
( SELECT
学号
FROM
选课表
WHERE
课程编号 IN
(
SELECT
课程编号
FROM
课程表
WHERE
任课教师='李明'
)
)
SQL数据库题目
1、创建数据库
create database学生成绩数据库
on primary
(name='学生成绩数据库_mdf',
filename='e:\学生成绩数据库.mdb',
size=1,
maxsize=10,
filegrowth=10%)
log on
(name='学生成绩数据库_ldf',
filename='e:\学生成绩数据库.ldf',
size=1,
maxsize=10,
filegrowth=10%)
2、创建课程表
create table课程表
(课程号 char(6) primary key,
课程名称 char(20) not null,
任课教师 char(8))
3、创建学生表
create table学生表
(学号 char(6) primary key,
姓名 char(8) not null,
性别 char(2) constraint ck_性别 check(性别 in('男','女')),
民族 char(20) not null default'汉')
4、创建成绩表
create table成绩表
(学号 char(6) not null foreign key(学号) references学生表(学号),
课程号 char(6) not null foreign key(课程号) references课程表(课程号),
分数 int constraint ck_分数 check(分数 between 0 and 150))
5、添加信息
insert课程表(课程号,课程名)
values('100001','大学语文')
insert课程表(课程号,课程名)
values('100002','大学英语')
6.写出创建成绩表视图(学号,姓名,课程号,课程名称,成绩)的代码
create view成绩表视图
as
select学生表.学号,姓名,课程表.课程号,课程名称,成绩
from学生表,课程表,成绩表
where学生表.学号=成绩表.学号 and成绩表.课程号=课程表.课程号
7.写出计算大学语文课程成绩最高分、最低分、平均分的代码
select max(分数)'最高分数',min(分数)'最低分数',avg(分数)'平均分数'
from成绩表
where学号 in(select学号
from课程表
where课程名称='大学语文')
8、检索姓李的女同学的信息:姓名、性别、民族
select姓名,性别,民族
from学生表
where姓名 like'李%' and性别='女'
数据库题库和SQL数据库题目的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!