第08課 SQL強(qiáng)化練習(xí)(如需答案, 請私信)

包括四個表:學(xué)生表(Student)、課程表(Course)、成績表(Score)以及教師信息表(Teacher)。表結(jié)構(gòu)及數(shù)據(jù)如下,請完成題目。

表(一)Student (學(xué)生表) :

屬性名 數(shù)據(jù)類型 可否為空 含 義
Sno varchar (20) 學(xué)號(主碼)
Sname varchar (20) 學(xué)生姓名
Ssex varchar (20) 學(xué)生性別
Sbirthday datetime 學(xué)生出生年月
Class varchar (20) 學(xué)生所在班級

表(二)Course(課程表):

屬性名 數(shù)據(jù)類型 可否為空 含 義
Cno varchar (20) 課程號(主碼)
Cname varchar (20) 課程名稱
Tno varchar (20) 教工編號(外碼)

表(三)Score(成績表):

屬性名 數(shù)據(jù)類型 可否為空 含 義
Sno varchar (20) 學(xué)號(外碼))
Cno varchar (20) 課程號(外碼)
Degree Decimal(4,1) 成績
主碼:Sno+ Cno

表(四)Teacher(教師表):

屬性名 數(shù)據(jù)類型 可否為空 含 義
Tno varchar (20) 教工編號(主碼)
Tname varchar (20) 教工姓名
Tsex varchar (20) 教工性別
Tbirthday datetime 教工出生年月
Prof varchar (20) 職稱
Depart varchar (20) 教工所在部門

表 1-2 數(shù)據(jù)庫中的數(shù)據(jù):
表(一)Student:

Sno Sname Ssex Sbirthday class
108 曾華 1977-09-01 95033
105 匡明 1975-10-02 95031
107 王麗 1976-01-23 95033
101 李軍 1976-02-20 95033
109 王芳 1975-02-10 95031
103 陸君 1974-06-03 95031

表(二)Course:

Cno Cname Tno
3-105 計算機(jī)導(dǎo)論 825
3-245 操作系統(tǒng) 804
6-166 數(shù)字電路 856
9-888 高等數(shù)學(xué) 831

表(三)Score:

Sno Cno Degree
103 3-245 86
105 3-245 75
109 3-245 68
103 3-105 92
105 3-105 88
109 3-105 76
101 3-105 64
107 3-105 91
108 3-105 78
101 6-166 85
107 6-166 79
108 6-166 81

表(四)Teacher:

Tno Tname Tsex Tbirthday Prof Depart
804 李誠 1958-12-02 副教授 計算機(jī)系
856 張旭 1969-03-12 講師 電子工程系
825 王萍 1972-05-05 助教 計算機(jī)系
831 劉冰 1977-08-14 助教 電子工程系
#建學(xué)生信息表student
create table student(
sno varchar(20) not null primary key,
sname varchar(20) not null,
ssex varchar(20) not null,
sbirthday datetime,
class varchar(20)
);
#建立教師表
create table teacher
(
tno varchar(20) not null primary key,
tname varchar(20) not null,
tsex varchar(20) not null,
tbirthday datetime,
prof varchar(20),
depart varchar(20) not null
);
#建立課程表course
create table course
(
cno varchar(20) not null primary key,
cname varchar(20) not null,
tno varchar(20) not null,
foreign key(tno) references teacher(tno)
);
#建立成績表
create table score
(
id int(11) not null primary key,
sno varchar(20) not null,
foreign key(sno) references student(sno),
cno varchar(20) not null,
foreign key(cno) references course(cno),
degree decimal
);
#添加學(xué)生信息
insert into student values('108','曾華','男','1977-09-01','95033');
insert into student values('105','匡明','男','1975-10-02','95031');
insert into student values('107','王麗','女','1976-01-23','95033');
insert into student values('101','李軍','男','1976-02-20','95033');
insert into student values('109','王芳','女','1975-02-10','95031');
insert into student values('103','陸君','男','1974-06-03','95031');
#添加教師表
insert into teacher values('804','李誠','男','1958-12-02','副教授','計算機(jī)系');
insert into teacher values('856','張旭','男','1969-03-12','講師','電子工程系');
insert into teacher values('825','王萍','女','1972-05-05','助教','計算機(jī)系');
insert into teacher values('831','劉冰','女','1977-08-14','助教','電子工程系');
#添加課程表
insert into course values('3-105','計算機(jī)導(dǎo)論','825');
insert into course values('3-245','操作系統(tǒng)','804');
insert into course values('6-166','數(shù)字電路','856');
insert into course values('9-888','高等數(shù)學(xué)','831');
#添加成績表
insert into score values(1,'103','3-245','86');
insert into score values(2,'105','3-245','75');
insert into score values(3,'109','3-245','68');
insert into score values(4,'103','3-105','92');
insert into score values(5,'105','3-105','88');
insert into score values(6,'109','3-105','76');
insert into score values(7,'103','3-105','64');
insert into score values(8,'105','3-105','91');
insert into score values(9,'109','3-105','78');
insert into score values(10,'103','6-166','85');
insert into score values(11,'105','6-166','79');
insert into score values(12,'109','6-166','81');

查詢 Student 表中的所有記錄的 Sname、Ssex 和 Class 列。

查詢教師所有的單位即不重復(fù)的 Depart 列。

查詢 Student 表的所有記錄。

查詢 Score 表中成績在 60 到 80 之間的所有記錄。

查詢 Score 表中成績?yōu)?85,86 或 88 的記錄。

查詢 Student 表中“95031”班或性別為“女”的同學(xué)記錄。

以 Class 降序查詢 Student 表的所有記錄。

以 Cno 升序、Degree 降序查詢 Score 表的所有記錄。

查詢“95031”班的學(xué)生人數(shù)。

查詢 Score 表中的最高分的學(xué)生學(xué)號和課程號。

查詢每門課的平均成績。

查詢分?jǐn)?shù)大于 70,小于 90 的 Sno 列。

查詢所有學(xué)生的 Sname、Cno 和 Degree 列。

查詢所有學(xué)生的 Sno、Cname 和 Degree 列。

查詢所有學(xué)生的 Sname、Cname 和 Degree 列。

查詢 95033 班和 95031 班全體學(xué)生的記錄。

查詢存在有 85 分以上成績的課程 Cno。

查詢 Student 表中不姓“王”的同學(xué)記錄。

以班號和年齡從大到小的順序查詢 Student 表中的全部記錄。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1).創(chuàng)建數(shù)據(jù)庫 create database學(xué)生選課數(shù)據(jù)庫 2).創(chuàng)建四張表 Create table Stu...
    blvftigd閱讀 1,690評論 0 0
  • 最近打算采用關(guān)系型數(shù)據(jù)庫來理一下公司的運(yùn)營數(shù)據(jù),先拿點(diǎn)東西練手找感覺。下面是幾個關(guān)于學(xué)生課業(yè)的表,需要建立一個數(shù)據(jù)...
    九天朱雀閱讀 1,045評論 0 3
  • 說明:以下五十個語句都按照測試數(shù)據(jù)進(jìn)行過測試,最好每次只單獨(dú)運(yùn)行一個語句。 問題及描述: --1.學(xué)生表 Stud...
    lijun_m閱讀 1,387評論 0 1
  • 原文:https://www.cnblogs.com/aqxss/p/6563625.html 一、設(shè)有一數(shù)據(jù)庫,...
    名門翹楚C閱讀 1,210評論 0 0
  • js 基本數(shù)據(jù)類型 特殊數(shù)據(jù)類型 數(shù)據(jù)類型的轉(zhuǎn)換 PS: 需要注意NaN 的數(shù)據(jù)類型是 number數(shù)組(...
    黃清淮閱讀 261評論 0 0

友情鏈接更多精彩內(nèi)容