资源描述
1 ,(sql_diao_12032)以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、 选课表,表结构如下所示:
学生字段名称数据类型长度备注
学号char 10主键姓名 varchar 50
性别char 2出生日期datetime
课程字段名称数据类型长度备注
课号char 4主键课程名 varchar 100
学分int
选课字段名称数据类型长度备注
学号char 10主键课号char 4
成绩int
针对以上各表,用SQL语句完成以下操作。
查询每门课的选课人数,显示课号、课程名、人数。(注意没有人选的课程也要显示)答:
select课程.课号,课程名,couni(学号)gro叩by课程名,课程.课号as人数from课程left outer join选课on选课.课号=课程.课号gro叩by课程.课号,课程名
2,(sql_diao_12037)d知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品字段名称数据类型长度备注
商品编号char 5主键商品名称varchar 50
单价money库存数量int
顾客字段名称数据类型长度备注
顾客编号char 5主键顾客姓名varchar 50
订单字段名称数据类型长度备注
订单编号char 10主键
创立数据库
9. (sql_diao_22066)此应用场景中主要包含以下几个关系:
1:影片专题信息(TSubject )关系,主要包括专题编号(SubjectID)、专题名称 (SubjectName)^ 备注(SubjectMemo);2:影片基本信息(TVideo)关系,主要包括影片编号(VideolD).影片名称(VideoName).导演 (VideoDirector)、上映时间(VideoTime)、主演(VideoActor)、影片海报(VideoPoster)、影片 描述(VideoDesc)^ 集数(VideoEpisode )、价格(VideoPrice)、影片状态(VideoState)、 备注(VideoMemo)、专题编号(SubjectlD);
3:影片剧情基本信息(TVideoEpisode)关系,主要包括剧情编号(EpisodelD).剧情集数 (EpisodeNum)、播放地址(EpisodeURL)^ 备注(EpisodeMemo);> 影片编号(VideolD);用CREATE DATABASE语句创立一个数据库,数据库名为IPTV,此数据库包含一个数据库 文件和一个事务日志文件。数据库文件只有主数据库文件,其逻辑文件名为IPTV_Data,其物 理文件名为IPTV_Data.MDF,存放在C:\MSSQL\Data目录下,其初始大小为20MB,最大为 900MB,自动增长时的递增量为10MB。事务日志文件的逻辑名为IPTV_Log,物理文件名为 IPTV_Log.LDF,也存放在C:\MSSQL\ Log目录下,初始大小为20MB,最大为500MB,自 动增长时的递增量为5MB。
答:
CREATE DATABASE IPTVON PRIMARY
NAME = IPTV_Dala,FILENAME=C:\MSSQL\Data\lPTV_Data.MDF\
SIZE = 20,MAXSIZE = 900,
FILEGROWTH = 10
LOG ONNAME = IPTV_Log,
FILENAME='C:\MSSQL\ Log\ IPTV.Log.LDF',SIZE = 20,
MAXSIZE = 500,FILEGROWTH =5
)
10. (sql_diao_22061)用CREATE DATABASE语句创立一个数据库,数据库名为IQMS,此数据库包含一个数据库 文件和一个事务日志文件。数据库文件只有主数据库文件,其逻辑文件名为IQMS_Data,其物 理文件名为IQMS_Data.MDF,存放在C:\MSSQL\Data目录下,其初始大小为20MB,最大为 900MB,自动增长时的递增量为10MB。事务日志文件的逻辑名为IQMS_Log,物理文件名为 IQMS_Log.LDF,也存放在C:\MSSQL\ Log目录下,初始大小为20MB,最大为500MB,自 动增长时的递增量为5MBo
答:
CREATE DATABASE IQMS
ON PRIMARY
(NAME = IQMS_Data,
FILENAME='C:\MSSQL\Data\IQMS_Data.MDF,SIZE = 20,
MAXSIZE = 900,FILEGROWTH = l()
)LOG ON
NAME = IQMS_Log,FILENAME=,C:\MSSQL\ Log\ IQMS_Log.LDF,
SIZE = 20,MAXSIZE = 500,
FILEGROWTH =5)
11. (sql_diao_22065)此应用场景中主要包含以下几个关系:
1:影片专题信息(TSubjcct )关系,主要包括专题编号(SubjectID)、专题名称 (SubjectName)、备注(SubjectMeino);2:影片基本信息(TVideo)关系,主要包括影片编号(VideoID).影片名称(VideoName)、导演 (VideoDirector)、上映时间(VideoTime)> 主演(VideoActor)、影片海报(VideoPoster)、影片描述 (VideoDesc)x 集数(VideoEpisode )、价格(VideoPrice)> 影片状态(VideoState)> 备注 (VideoMemo)、专题编号(SubjectID);
3:影片剧情基本信息(TVideoEpisode)关系,主要包括剧情编号(EpisodeID)>剧情集数 (EpisodeNum)> 播放地址(EpisodeURL)、备注(EpisedeMemo);、影片编号(VidcoID);用CREATE DAT/XBASE语句创立一个数据库,数据库名为IPTV,此数据库包含一个数据库 文件和一个事务日志文件。数据库文件只有主数据库文件,其逻辑文件名为IPTV_Data,其物 理文件名为IPTV_Data.MDF,存放在C:\MSSQL\Data目录下,其初始大小为20MB,最大为 900MB,自动增长时的递增量为10MB。事务日志文件的逻辑名为IPTVJLog,物理文件名为 IPTV_Log.LDF,也存放在C:\MSSQL\ Log目录下,初始大小为20MB,最大为500MB,自动 增长时的递增量为5MBo
CREATE DATABASE IPTV
ON PRIMARYNAME = IPTV_Data,
FILENAME=,C:\MSSQL\Data\IPTV_Data.MDF,,SIZE = 20,
MAXSIZE = 900,FILEGROWTH = 10
)
LOG ONNAME = IPTV_Log,
FILENAME=*C:\MSSQL\ Log\ IPTV_Log.LDF,SIZE = 20,
MAXSIZE = 500,FILEGROWTH =5
)12. (sql_diao_32287)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“eno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
在Student表中插入一行新数据,学号为S100,姓名:新生,性别:男,年龄:19,所在系 未定。
答:
insert into Student valucs('Sl00\'新生','男*, 19,null)(sql_diao_32101)
商品表、订单表、订单细节表、顾客表的结构如下所示:
商品字段名称数据类型长度备注
商品编号char 5主键商品名称varchar 50
单价 numeric(10,2)库存数量int取值大于等于0
顾客字段名称数据类型长度备注
顾客编号char 5主键顾客姓名varchar 50
订单字段名称数据类型长度备注
订单编号char 10主键下单日期date
顾客编号char 5外键,引用顾客表的顾客编号
订单细节字段名称数据类型长度备注
订单编号char 10主键。外键,引用订单表的订单编号商品编号char 5主键。外键,引用商品表的商品编号
数量int默认值为1针对以上各表,用SQL语句完成以下操作。
删除商品编号为“1000T'的订单详细信息答:
delete from订单细节where商品编号='10001'(sql_diao_32346)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
删除“VB”考试成绩最低的学生的VB修课记录。
答:
delete from sc where sno in (
select top 1 with ties sno from sc join course as c on o = o
where cnamc = 'VB'
order by grade asc )
and eno in (select eno from course where cname = 'VB')(sql_diao_32328 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
删除没人选的课程。(请用子查询实现)答:
delete from course where eno not in ( select eno from sc)(sql_diao_32345 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
删除信息管理系成绩小于50分的学生的修课纪录。(请用子查询实现)答:
delete from sc where grade < 50 and sno in (
select sno from student where sdept ='信息管理系')(sql_diao_32330)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
删除计算机系VB成绩不及格学生的VB选课记录。
答:
delete from sc
where sno in ( select sno from student where sdept ='计算机系')
and eno in ( select eno from course where cname = 'VB')
and grade < 6018. (sql_diao_32322 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
删除考试成绩小于50的学生的全部选课记录。
答:
delete from sc where grade < 5019. (sql_diao_32083 )
以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示:
学生字段名称数据类型长度备注
学号char 10主键姓名 varchar 50
性别char 2出生日期datetime
课程字段名称数据类型长度备注
课号char 4主键课程名 varchar 100
学分int
选课字段名称数据类型长度备注
学号charlO主键,引用学生表的外键课号char 4主键,引用课程表的外键
成绩int取值范围为:0~100针对以上各表,,用SQL语句完成以下操作。
删除学号为“2012001001”的学生选课信息。
下单日期date顾客编号Char 5外键
订单细节字段名称数据类型长度备注
订单编号charlO主键、外键商品编号char 5主键、外键
数量int针对以上各表,用SQL语句完成以下操作。
用SQL语句创立以上数据表,要求考虑主键和外键答:
create table 商品 (商品编号 char(5) primary key,商品名称varchar(5O),
单价money,库存数量ini)
gocreate (able 顾客(顾客编号 char(5) primary key,
顾客姓名varchar(50))g。
create table 订单 (订单编号 char(10) primary key,下单日期date,
顾客编号char(5) references顾客(顾客编号))go
create (able订单细节(订单编号char( 10) references订单(订单编号),商品编号char(5) references商品(商品编号),
数量int,primary key(订单编号,商品编号)
)Go
3.(sql_diao_12046)商品表、订单表、订单细节表、顾客表的结构如下所示:
商品字段名称数据类型长度备注
商品编号char 5主键商品名称varchar 50
单价money库存数量int
顾客字段名称数据类型长度备注
顾客编号char 5主键顾客姓名varchar 50
答:
delete from 选课 where 学号=,2012001001'(sql_diao_32119)
己知一个数据表的结构如下,表名为“Product”。
列名数据类型长度备注描述ProductlDchar12主键 商品编号
ProductName varchar 50 商品名称ProductPrice float 商品价格
ProductMemo Varchar 50 备注由于供应商对商品的批发价格进行调整,现需对现行商品价格进行调整,规那么如下:原价格小 于10元上调8%,原价格大于30元上调6%,其它上调7%,请编写一段SQL脚本完成上述功 能。
答:
UPDATE Product SET ProductPrice =
CASEWHEN ProductPrice < 10 THEN ProductPrice* 1.08
WHEN ProductPrice > 3() THEN ProductPrice* 1.06ELSE ProductPrice* 1.07
END(sql_diao_32337 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
修改全部课程的学分,修改规那么如下:
如果是第1〜2学期开设的课程,那么学分增加5分;如果是第3〜4学期开设的课程,那么学分增加3分;
如果是第5〜6学期开设的课程,那么学分增加1分;其他学期开设的课程学分不变。
答:
update course set credit = credit + case
when semester in (1,2) then 5
when semester in (3,4) then 3
when semester in (5,6) then 1
else 0End
20. (sql_diao_32002)以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
学生字段名称数据类型长度备注
学号char 10主键姓名 varchar 50
性别char 2出生日期datetime
课程字段名称数据类型长度备注
课号char 4主键a课程名 varchar 100
学分int
选课字段名称数据类型长度备注
学号charlO主键课号char 4
成绩int
针对以上各表,用SQL语句完成以下操作。
将课号为“1001”的课程学分改为4答:
update 课程 set 学分=4 where 课号='1001'(sql_diao_32065 )
己知一个数据表的结构如下,表名为“Product”。
列名数据类型长度备注描述ProductIDcharl2主键商品编号
ProductNamevarcharSO 商品名称ProductPricefloat 商品价格
ProductMemoVarchar50 备注由于供应商对商品的批发价格进行调整,现需对现行商品价格进行调整,规那么如下:原价格小 于10元上调8%,原价格大于30元上调6%,其它上调7%,请编写一段SQL脚本完成上述功 能。
答:
UPDATE Product SET ProductPrice =
CASEWHEN ProductPrice < 10 THEN ProductPrice* 1.08
WHEN ProductPrice > 30 THEN ProductPrice* 1.06ELSE ProductPrice* 1.07
END(sql_diao_32321 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
将C001课程的考试成绩增加10分。
答:
update sc set grade = grade + 10 where eno = 'C001*(sql_diao_32070)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
学生字段名称数据类型长度备注
学号char 10主键性别char 2
出生日期datetime
课程字段名称数据类型长度备注
课号char 4主键课程名 varchar 100
学分int
选课字段名称数据类型长度备注
学号char 10主键课号char 4
成绩int
针对以上各表,用SQL语句完成以下操作。
将课号为“1001”的课程学分改为4答:
update 课程 set 学分=4 where 课号='1001'(sql_diao_32347)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄 sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
修改高等数学的考试成绩,修改规那么如下:如果是计算机系学生,那么加10分;如果是信息管理 系学生那么加5分;如果是数学系学生那么分数不变。
答:
update sc set grade = grade + case sdept
when,计算机系,then 10
when '信息管理系'then 5
when,数学系,then 0 end
from sc join student as s on s.sno = sc.sno
join course as c on o = o
where cname ='高等数学,(sql_diao_32021 )
己知用户表如下:
用户(帐号,密码,姓名,状态)状态可以有两个值:“0”一>未锁定,“俨一>锁定。
请编写一个存储过程,验证用户输入的帐号和密码是否正确,返回值有如下规定:
-1:帐号或密码错误。
-2:帐号锁定。
0:正确
答:
create procedure checkpass@uscrname char( 10),
@password char( 10)as
begin
if cxists(selcct * from fflP where 4收号=@uscrnamc and 密码=@password)
begin
if (select 状态 from 用户 where 帐号=@username)='r
return -2
else
return 0
endelse
return -1End
21. (sql_diao_42324)在Course表上为Cname列建立一个唯一的非聚集索引,索引名为:IdxCN
答:
create index IdxCN on Course(Cname)(sql_diao_42315 )
在SC表上为sno和Cno建立一个组合的非聚集索引,索引名为:IdxsnoCno。
答:
create index IdxsnoCno on SC(sno,Cno)(sql_diao_42323 )
在Student表上为Sname列建立一个非聚集索引,索引名为:Idxsno。
答:
create index Idxsno on Studcnt(Sname)(sql_diao_32097 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
学生字段名称数据类型长度备注
学号charlO主键姓名 varchar50
性别char2出生日期datetime
课程字段名称数据类型长度备注
课号char4主键课程名 varcharlOO
学分int
选课字段名称数据类型长度备注
学号charl 0主键,外键课号char4主键,外键 成绩int
针对以上各表,用SQL语句完成以下操作。
查询选课人数在3人以上课程的平均成绩答:
select 课号,avg(成绩)from 选课 group by 课号 having count(*)>3(sql_diao_32091 )
以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示:
学生字段名称数据类型长度备注
学号char 10主键姓名 varchar 50
性别char 2取值为“男”或“女”出生日期datetime
课程字段名称数据类型长度备注
课号char 4主键课程名 varchar 100
学分int
选课字段名称数据类型长度备注
学号charlO主键,引用学生表的外键成绩int取值范围为:0-100
针对以上各表,用SQL语句完成以下操作。
查询姓“李”的学生的学号和姓名答:select学号,姓名from学生where姓名like'李%‘
22. (sql_diao_32336)以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“Cno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
查询总成绩超过200分的学生的学号和总成绩。
答:select sno,sum(grade) 总成绩 from sc group by sno having sum(grade) > 200(sql_diao_32283)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)
订单字段名称数据类型长度备注
订单编号charlO主键下单日期date
顾客编号Char 5外键
订单细节字段名称数据类型长度备注
订单编号charlO主键、外键商品编号char 5主键、外键
数量int针对以上各表,用SQL语句完成以下操作。
查询商品种类数量大于2的订单(订单细节中大于2行的订单),显示:订单编号,商品种类数。 答:
select订单编号,count(商品编号)as商品种类数from订单细节group by订单编号having count(*)>24.(sql_diao_12029)
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示:
学生字段名称数据类型长度备注
学号charlO主键姓名 varchar 50
性别char 2出生日期datetime
课程字段名称数据类型长度备注
课号char 4主键课程名 varchar 100
学分int
选课字段名称数据类型长度备注
学号charlO主键课号char 4
成绩int
针对以上各表,用SQL语句完成以下操作。
查询选修了“数据库”课程的学生人数
字段名称数据类型长度备注含义sno char 10主键 学号
sname varchar 20 姓名ssex char 2 性别
sage tinyint 年龄sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类型长度备注含义
sno char 10主键 学号。外键,引用Student的“sno”eno char 4主键 课程号。外键,引用Course的“eno”
grade int 成绩针对以上各表,用SQL语句完成以下操作。
查询成绩在70〜80分的学生的学号、课程号和成绩。
答:select sno,eno,grade from sc where grade between 70 and 80(sql_diao_32086)
以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示:
学生字段名称数据类型长度备注
学号charlO主键姓名 varchar 50
性别char 2取值为“男”或“女”出生日期datetime
课程 字段名称数据类型长度备注课号char 4主键
课程名 varchar 100学分int
选课字段名称数据类型长度备注
学号charlO主键,引用学生表的外键课号char 4主键,引用课程表的外键
成绩int取值范围为:0~100
针对以上各表,用SQL语句完成以下操作。
查询选修了“数据库”课程的学生信息,列出学号和姓名。(使用子查询实现)答:
select学号,姓名from学生where学号in (select学号from选课where课号 in (select课号from课程where课程名二'数据库'))(sql_diao_32102)
商品表、订单表、订单细节表、顾客表的结构如下所示:
商品字段名称数据类型长度备注
商品编号char 5主键商品名称varchar 50
单价 numeric(10,2)库存数量int取值大于等于0
顾客字段名称数据类型长度备注
顾客编号char 5主键顾客姓名varchar 50
订单字段名称数据类型长度备注
订单编号char 10主键下单日期date
顾客编号char 5外键,引用顾客表的顾客编号
订单细节字段名称数据类型长度备注
订单编号charlO主键。外键,引用订单表的订单编号商品编号char 5主键。外键,引用商品表的商品编号
数量int默认值为1针对以上各表,用SQL语句完成以下操作。
查询订购了“10001”号商品的所有订单,显示:订单编号和下单日期,结果按下单日期降序排列答:
select订单编号,下单日期from订单where商品编号='10001 * order by下单日 期 desc(sql_diao_32342 )
以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构 如下所示:
Student (学生表)字段名称数据类型长度备注含义
sno char 10主键 学号sname varchar 20 姓名
ssex char 2 性别sage tinyint 年龄
sdept varchar 30 所在系
Course (课程表)字段名称数据类型长度备注含义
eno char 4主键 课程号cname varchar 100 课程名
credit int 学分semester tinyint 开课学期
SC (选课表)字段名称数据类
展开阅读全文