请根据给出的数据库表的结构和要求,写出相应的Sql语句。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请根据给出的数据库表的结构和要求,写出相应的Sql语句。相关的知识,希望对你有一定的参考价值。
对于教学数据库的几个基本表:
表1 student表(学生信息表)
字段名称
类 型
宽 度
允许空值
主 键
说 明
sno
char
8
NOT NULL
是
学生学号
sname
char
8
NOT NULL
学生姓名
sex
char
2
NULL
学生性别
native
char
20
NULL
籍贯
birthday
smalldate
4
NULL
学生出生日期
dno
char
6
NULL
学生所在院系
spno
char
8
NULL
专业代码(外键)
classno
char
4
NULL
班级号
entime
smalldate
4
NULL
学生入校时间
home
varchar
40
NULL
学生家庭住址
tel
varchar
40
NULL
学生联系电话
表2 course表(课程信息表)
字段名称
类 型
宽 度
允许空值
主 键
说 明
cno
char
10
NOT NULL
是
课程编号
spno
char
8
NULL
专业代码(外键)
cname
char
20
NOT NULL
课程名称
ctno
tinyint
1
NULL
课程类型编号(外键)
experiment
tinyint
1
NULL
实验时数
lecture
tinyint
1
NULL
授课学时
semester
tinyint
1
NULL
开课学期
credit
tinyint
1
NULL
课程学分
表3 student_course表(学生选课成绩表)
字段名称
类 型
宽 度
允许空值
主 键
说 明
sno
char
8
NOT NULL
是
学生学号
tcid
smallint
2
NOT NULL
是
上课编号
score
tinyint
1
NULL
学生成绩
表4 teacher表(教师信息表)
字段名称
类 型
宽 度
允许空值
主 键
说 明
tno
char
8
NOT NULL
是
教师编号
tname
char
8
NOT NULL
教师姓名
sex
char
2
NULL
教师性别
birthday
smalldate
4
NULL
教师出生日期
dno
char
6
NULL
教师所在院系
pno
tinyint
1
NULL
教师职务或职称编号
home
varchar
40
NULL
教师家庭住址
zipcode
char
6
NULL
邮政编码
tel
varchar
40
NULL
联系电话
email
varchar
40
NULL
电子邮件
表5 teacher_course表(教师上课课表)
字段名称
类 型
宽 度
允许空值
主 键
说 明
tcid
smallint
2
NOT NULL
是
上课编号
tno
char
8
NULL
教师编号(外键)
spno
char
8
NULL
专业代码(外键)
classno
char
4
NULL
班级号
cno
char
10
NOT NULL
课程编号(外键)
semester
char
6
NULL
学期
schoolyear
char
10
NULL
学年
classtime
varchar
40
NULL
上课时间
classroom
varchar
40
NULL
上课地点
weektime
tinyint
1
NULL
每周课时数
试用SQL的查询语句表达下列查询:
(1)查询姓‘刘’的老师所授课程的课程编号号和课程名。
(2)查询在1990年1月1日以后出生的学生信息。
(3)查询‘数据库’这门课的授课学时和学分。
(4)查询‘数据库’这门课的上课时间和上课地点。
(5)查询‘数据库’这门课的授课教师姓名、性别和联系电话。
对不起,昨天由于太着急了所以才那样的 让你们费心了 谢谢
你发表的这个知道,页面排版实在不敢让人恭维...
请重新排版发表,不然的话,想帮助你的人也看不懂
你也可以将数据库表格截图发表,这样的话更直观
毕竟如果要帮助你,我们肯定会在本地实现的。
希望能帮助你 参考技术A 摆脱你可不可换成表啊 参考技术B 怎么感觉你这个英文的字段名都乱七八糟的 跟中文的对不上号啊
2022-11-23: 分数排名。输出结果和表的sql如下。请写出输出结果的sql语句? +-------+------+ | score | rank | +-------+------+ | 4.
2022-11-23: 分数排名。输出结果和表的sql如下。请写出输出结果的sql语句?
±------±-----+
| score | rank |
±------±-----+
| 4.00 | 1 |
| 4.00 | 1 |
| 3.85 | 2 |
| 3.65 | 3 |
| 3.65 | 3 |
| 3.50 | 4 |
±------±-----+
DROP TABLE IF EXISTS scores;
CREATE TABLE scores (
id int(11) NOT NULL,
score decimal(10,2) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO scores VALUES ('1', '3.50');
INSERT INTO scores VALUES ('2', '3.65');
INSERT INTO scores VALUES ('3', '4.00');
INSERT INTO scores VALUES ('4', '3.85');
INSERT INTO scores VALUES ('5', '4.00');
INSERT INTO scores VALUES ('6', '3.65');
答案2022-11-23:
sql语句如下:
select a.score as score,
(select count(distinct b.score) from scores b where b.score >= a.score) as rank
from scores a
order by a.score desc
以上是关于请根据给出的数据库表的结构和要求,写出相应的Sql语句。的主要内容,如果未能解决你的问题,请参考以下文章