有如下数据库表结构,写出相应的查询语句

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:42:52
学生TB_STUDENT
学号 Varchar(32)
系_ID Varchar(32)
姓名 Varchar(32)
出生日期 datatime

系TB_SCHOOL
系_ID Varchar(32)
系名 Varchar(32)
学生住址 Varchar(32)

课程TB_LIB

学号 Varchar(32)
课程名称 Varchar(32)
成绩 Varchar(32)
1、 请查找出“计算机系“的所有学生的 “数学”成绩(5 分)

2、 请查找出所有叫“张三”的学生的“英语成绩” (5 分)

3、 请查找出”计算机系”所有到2005-9-27日止24岁以上的学生(5 分)

4、 请查找出所有姓“张”的学生所在的系的名称(不可以重复)(5 分)

1 select 学号,成绩 from TB_LIB where 课程名称='数学' and 学号 in (select 学号 from TB_STUDENT where 系_ID in (select 系_ID from TB_SCHOOL where 系名='计算机系'));
2 select 成绩 from TB_LIB where 课程名称='英语' and 学号 in(select 学号 from TB_STUDENT where 姓名='张三');
3 select 学号,姓名 from TB_STUDENT where floor(month_between(date'2005-9-27'-datatime)/12)>=24;
4 select 系_ID,系名 from TB_SCHOOL where 系_ID in (select 系_ID from TB_STUDENT where 姓名 like '张%');

1:
select a.学号,a.姓名,c.成绩 from TB_STUDENT a inner join TB_SCHOOL b on a.系_ID=b.系_ID
inner join TB_LIB c on a.学号=c.学号
where b.系名='计算机系' and c.课程名称='数学'
order by c.成绩

2:
select 学号,成绩 from TB_LIB
where 课程名称='英语'
and 学号 in (select 学号 from TB_STUDENT where 姓名='张三')

3:2005-9-27号24岁以上,就是1981-9-27以前出生的

select * from TB_STUDENT
where 出生日期<'1981-9-27'
and 系_ID in (select 系_ID from TB_SC