求SQL查询语句的编写?作业需要。
展开全部
1. 查询全体学生的姓名、学号、性别和出生日期。
select 姓名,学号,性别,出生日期 from 学生信息表
2. 查询考试成绩在65以上(含)的学生学号和成绩。
select 学号,成绩 from 成绩表 where score>=65
3. 查询“07计算机1”和“07计算机2”班的学生的学号和姓名。
select 学号,姓名 from 学生信息表 where 班级 in('07计算机1','07计算机2')
4. 查询既不是共产党员也不是共青团员的学生的学号和姓名。
这个不知道表结构没发写啊,你这个学生太懒,中国就是你这样的大学生太多才掉价的。大学应该广进严出。
5. 查询姓名为“姚明” 的学生的学号、性别和出生日期。
select 学号,性别,出生日期 from 学生信息表 where 姓名='姚明'
6. 查询姓叶的学生的学号、姓名和班级。
select 学号,姓名,班级 from 学生信息表 where 姓名 like'叶%'
7.查询所有选修课程ID为“004”且成绩在90分(含)以下的学生的学号、课程ID和成绩。
select 学号,课程,成绩 from 成绩表 where 课程ID='004' and score>=90
8. 查询总分在75(含)到85(含)之间的学生的学号和成绩,并按成绩的降序排列,如果成绩相同则再按学号的升序排列。
select 学号,成绩 from 成绩表 where score between 75 and 85 order by score desc,学号 asc
9. 查询学号为‘000001’的学生的平均成绩、最高成绩和最低成绩。
select avg(score) as avgscore,max(score) as maxscore,min(score) as minsocre
from 成绩表 where 学号='000001'
10. 查询每门课程的课程ID及其相应的选课人数、每门课程的平均成绩、每门课程成绩的最大值和最小值。
select courseid,count(courseid) as 选课人数,avg(score) as 平均成绩,max(score) as maxscore,min(score) as minsocre
from 成绩表
group by courseid
11. 查询选修了3门以上课程的学生学号和选课门数和平均成绩。
select 学号,count(T1.courseid) as 选课门数,avg(score) as 平均成绩
from 选课表 t1 inner join 成绩表 t2
on t1.courseid=t2.courseid
group by 学号
having count(courseid) >3
12. 创建“成绩表1”,包含的属性为学号、课程ID、成绩,其中各属性的数据类型根据客观世界自己选择。
create table 成绩表1 (学号 int,课程ID int,成绩 float)
13. 向成绩表1添加“姓名”列,其数据类型为text, 30位字符长度。
alter table 成绩表1
add 姓名 varchar(30)
14. 删除成绩表1
drop table 成绩表1
15. 向课程信息表中插入一条数据:课程ID为007,课程名称为运筹学,学分为3,学时为64。
insert into 课程信息表 (课程ID,课程名称,学分,学时)
values('007','运筹学','3','64')
16. 将学号为000014且所选课程ID为004的记录的成绩改为88分。
update 成绩表 set score=88 where 学号='000014' AND 课程ID=’004‘
17. 将所有选课程ID为004的学生的成绩加3分。
update 成绩表 score=score+3 where 课程ID=’004‘
select 姓名,学号,性别,出生日期 from 学生信息表
2. 查询考试成绩在65以上(含)的学生学号和成绩。
select 学号,成绩 from 成绩表 where score>=65
3. 查询“07计算机1”和“07计算机2”班的学生的学号和姓名。
select 学号,姓名 from 学生信息表 where 班级 in('07计算机1','07计算机2')
4. 查询既不是共产党员也不是共青团员的学生的学号和姓名。
这个不知道表结构没发写啊,你这个学生太懒,中国就是你这样的大学生太多才掉价的。大学应该广进严出。
5. 查询姓名为“姚明” 的学生的学号、性别和出生日期。
select 学号,性别,出生日期 from 学生信息表 where 姓名='姚明'
6. 查询姓叶的学生的学号、姓名和班级。
select 学号,姓名,班级 from 学生信息表 where 姓名 like'叶%'
7.查询所有选修课程ID为“004”且成绩在90分(含)以下的学生的学号、课程ID和成绩。
select 学号,课程,成绩 from 成绩表 where 课程ID='004' and score>=90
8. 查询总分在75(含)到85(含)之间的学生的学号和成绩,并按成绩的降序排列,如果成绩相同则再按学号的升序排列。
select 学号,成绩 from 成绩表 where score between 75 and 85 order by score desc,学号 asc
9. 查询学号为‘000001’的学生的平均成绩、最高成绩和最低成绩。
select avg(score) as avgscore,max(score) as maxscore,min(score) as minsocre
from 成绩表 where 学号='000001'
10. 查询每门课程的课程ID及其相应的选课人数、每门课程的平均成绩、每门课程成绩的最大值和最小值。
select courseid,count(courseid) as 选课人数,avg(score) as 平均成绩,max(score) as maxscore,min(score) as minsocre
from 成绩表
group by courseid
11. 查询选修了3门以上课程的学生学号和选课门数和平均成绩。
select 学号,count(T1.courseid) as 选课门数,avg(score) as 平均成绩
from 选课表 t1 inner join 成绩表 t2
on t1.courseid=t2.courseid
group by 学号
having count(courseid) >3
12. 创建“成绩表1”,包含的属性为学号、课程ID、成绩,其中各属性的数据类型根据客观世界自己选择。
create table 成绩表1 (学号 int,课程ID int,成绩 float)
13. 向成绩表1添加“姓名”列,其数据类型为text, 30位字符长度。
alter table 成绩表1
add 姓名 varchar(30)
14. 删除成绩表1
drop table 成绩表1
15. 向课程信息表中插入一条数据:课程ID为007,课程名称为运筹学,学分为3,学时为64。
insert into 课程信息表 (课程ID,课程名称,学分,学时)
values('007','运筹学','3','64')
16. 将学号为000014且所选课程ID为004的记录的成绩改为88分。
update 成绩表 set score=88 where 学号='000014' AND 课程ID=’004‘
17. 将所有选课程ID为004的学生的成绩加3分。
update 成绩表 score=score+3 where 课程ID=’004‘
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询