几道数据库原理题

几道数据库原理题,第1张

单选

1 b

2 a

3 a

4 b

5 c

6 c

7 c

多选题

8 ab

9 acd

10 ad

11 abcd

12 ab

13 abd

多选

判断题

14 错

15 对

16 错

17 对

18 错

19 错

20 错

select sname from student

where sno in(

select asno from studentcourse a join course b

on acno=bcno

where bcname='数据库原理' and ascore>90)

select asclass as 班级,count() as 不及格人数 from

student a join studentcourse b

on asno=bsno

where bscore<60

group by asclass

同学要好好学习哦!

CREATE TABLE [dbo][书店表] (

[书店编号] [nvarchar] (6) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[店名] [nvarchar] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[电话] [char] (8) COLLATE Chinese_PRC_CI_AS NULL ,

[地址] [char] (40) COLLATE Chinese_PRC_CI_AS NULL ,

[邮政编码] [char] (6) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo][图书表] (

[书号] [nvarchar] (6) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[书名] [nvarchar] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[第一作者] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[出版日期] [smalldatetime] NULL ,

[价格] [numeric](4, 1) NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo][图书销售表] (

[书号] [nvarchar] (6) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[书店编号] [nvarchar] (6) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[销售日期] [smalldatetime] NOT NULL ,

[销售数量] [smallint] NULL

) ON [PRIMARY]

GO

ALTER TABLE [dbo][书店表] WITH NOCHECK ADD

CONSTRAINT [PK_书店表] PRIMARY KEY CLUSTERED

(

[书店编号]

) ON [PRIMARY]

GO

ALTER TABLE [dbo][图书表] WITH NOCHECK ADD

CONSTRAINT [PK_图书表] PRIMARY KEY CLUSTERED

(

[书号]

) ON [PRIMARY]

GO

ALTER TABLE [dbo][图书销售表] WITH NOCHECK ADD

CONSTRAINT [PK_图书销售表] PRIMARY KEY CLUSTERED

(

[书号],

[书店编号],

[销售日期]

) ON [PRIMARY]

GO

1) SELECT 选课学号 学号, 姓名, 成绩

FROM 学生 RIGHT JOIN 选课 ON 学生学号=选课学号

WHERE 成绩>=80 AND 课程号=(SELECT 课程号 FROM 课程

WHERE 课程名='数据库原理')

2) SELECT COUNT(所在系='计算机系') 人数 FROM 学生

3) SELECT 学号, 姓名 FROM 学生

WHERE 学号 IN (SELECT DISTINCT 学号

FROM 选课 LEFT JOIN 课程 ON 选课课程号=课程课程号

WHERE 课程名='数据库原理') AND 学号 NOT IN(SELECT DISTINCT 学号

FROM 选课 LEFT JOIN 课程 ON 选课课程号=课程课程号

WHERE 课程名='数据结构')

首先,EXISTS和NOT EXISTS强调的是是否返回结果集,不要求知道返回什么。

而NOT EXISTS引导的语句如果没有结果集返回,那么WHERE条件就成立。

好,一定先记住这一点。

然后往下分析。

最内层的条件WHERE PNO=PPNO AND SNO=SSNO,是对商品表和售货员表的一 一 列举。什么意思呢。比如:P表中有商品A,B;S表中有售货员X,Y。

那么,一 一列举就是:

WHERE PNO=A AND SNO=X

WHERE PNO=A AND SNO=Y

WHERE PNO=B AND SNO=X

WHERE PNO=B AND SNO=Y

列举每个售货员,卖出每种商品。然后对应R表进行筛选。

那么中间层对S的查询的否定,就是有某个售货员没有卖出过所有商品。不是所有售货员都没卖出任何商品。看看有没有这样的人。

然后最外层对P查询的否定,是找这样的商品:不存在这样一个人(中间层对S查询出来的人),这个人没有卖出过该商品。

这样找出来的商品,就是每个人都卖出过的商品。

4IN语言就相当于一个循环,3个都要输出结果

7应该要用到all 和两个select语句吧

8就是102的成绩大于60分就行了呗

以上都是自己的想法,我还是学生哈,数据库用的很少,即使用到也不会写出这么复杂的语句,你可以找本书看看吧,我的答案不一定对,仅供参考

以上就是关于几道数据库原理题全部的内容,包括:几道数据库原理题、从学生选课数据库中查询选修“数据库原理”课并且成绩在90分以上的学生名单,请写出SQL语句.、求个数据库原理的作业 写出创建如下三张表的SQL语句,在定义表的同时定义数据的完整性约束: "图书等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9621890.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存