SQL查询复习题

发布 2022-09-21 01:52:28 阅读 3978

1、有两个关系:

c(cno,cn,pcno)

sc(sno,cno,g)

其中,c为课程表,对应的属性分别是课程号、课程名、选修课号;sc为学生选课表,对应的属性分别是学号、课号和成绩。用sql语言写出:

1)对关系sc中课号等于c1的选择运算。

2)对关系c的课号、课程名的投影运算。

3)两个关系的自然连接运算。

1)select *

from sc

where cno=‘c1’

2)select cno,cn

from c

3)select

from c, sc

where

2、设有如下4个关系模式:

书店(书店编号,书店名,地址)

图书(书号,书名,定价)

图书馆(馆号,馆名,城市,**)

图书发行(馆号,书号,书店号,数量)

请回答下列问题:

1)用sql语句检索已经发行的图书中最贵和最便宜的书名和定价。

2)写出下列sql语句所表达的中文含义:

select 馆名。

from 图书馆。

where 馆名in

select 馆号。

from 图书发行。

where 书号 in

select 书号。

from 图书。

where 书名=‘数据库系统基础’)

1) select 图书。书名,图书。定价。

from 图书。

wher 定价=(select max(定价)

from 图书,图书发行。

where 图书。书号=图书发行。书号)

select 图书。书名,图书。定价。

from 图书。

wher 定价=(select min(定价)

from 图书,图书发行。

where 图书。书号=图书发行。书号)

2)查询拥有已发行的‘数据库系统基础’一书的图书馆馆名。

3、设有职工关系模式如下:

people(pno,pname,sex,job,wage,dptno)

其中,pno为职工号,pname为职工姓名,sex为性别,job为职业,wage为工资,dptno为所在部门号。请写出下列查询使用的sql语句:

1)查询工资比其所在部门平均工资高的所有职工信息。

2)查询工资大于‘赵明华’工资的所有职工信息。

1)select *

from people x

where wage>( select **g(wage)

from people y

where

2)select *

from people

where wage>( select wage

from people

where pname=’赵明华’)

4、设有三个基本表:a表(a#,aname,wqty,city);b表(b#,bname,price,qty);ab表(a#,b#,qty)。试用sql语句写出下列查询:

1)找出店员人数不超过100人或者在长沙市的所有商店的商店**和商店名;

2)找出**书包的商店名;

3)找出至少**代号为256的商店所**的全部商品的商店名和所在城市;

1)select a#,aname

from a,b,ab

where wqty<=100 or city=‘长沙市’

2)select

from a,b,ab

where and and 书包’

3)select

from a,ab

where and in

select

from ab

where a#

5、设有学生表s(sno,sn)和学生选修课程表sc(sno,cno,cn,g),试用sql语句完成以下操作:

1)建立一个视图v-ssc(sno,sn,cno,cn,g),并按cno升序排序。

2)从视图v-ssc上查询平均成绩在90分以上的sn,cn,和g

1)create view v-ssc(sno,sn,cno,cn,g)

as select

from s,sc

where

order by cno

2)select sn,cn,g

from v-ssc

group by sno

h**ing **g(g)>90

6、设有4个关系模式:

s(sno,sname,state,city):s为**商,属性依次为:**商号、**商名、所在城市;

p(pno,pname,color,wei,price):p表示零件,属性依次为:零件号、零件名、零件颜色、零件重量和单价;

j(jno,jname,city):j表示工程,属性依次为: 工程号、工程名、所在城市。

spj(sno,pno,jno,qty)spj表示供货关系,属性依次为:**商号、零件号、工程号和供货数量;

用sql语句实现下面的查询要求:

1)查询**了全部零件的**商名和其所在城市。

2)查询**红色零件的**商名。

select * from a where exists(select * from b where

exists表示,对于a中的每一个记录,如果,在表b中有记录,其属性a的值与表a这个记录的属性a的值相同,则表a的这个记录是符合条件的记录,

如果是not exists,则表示如果表b中没有记录能与表a这个记录连接,则表a的这个记录是符合条件的记录。

1)select sname ,city

from s

where not exists

( select *

from p

where not exists

select *

from spj

where and

2)select sname

from s,p,spj

where and and 红色’

7、关于教学数据库的关系模式如下:

s(s#,sname,age,sex):s表示学生,各属性依次为:学号、

姓名、年龄、性别。

sc(s#,c#,grade):sc表示成绩,个属性依次为:学号、课程号、成绩。

c(c#,cname,teacher)c表示课程,个属性依次为:课程号、课程名、教师。

试用sql语句完成下列查询:

1)检索王老师所授课程的课程号和课程名。

2)检索年龄大于22岁的男学生的学号和姓名。

3)检索学号为10001学生所学课程的课程名与任课教师。

4)检索至少选修王老师所授课程中一门课程的女学生姓名。

5)检索张同学不学的课程的课程号。

6)检索全部学生都选修的课程的课程号与课程名。

1)select c#,cname

from c

where teacher=’王’

2)select s#,sname

from s

where age>22 and sex=’男’

3)select cname,teacher

from sc,c

where and s#

4)select sname

from s,sc,c

where and and sex=’女’ and teacher=’王’

5)select c#

from c

where not exists

(select *

from s,sc

where and and sname=’张’))

6)select c#,cname

from c

where not exists

(select *

from s

where not exists

select *

from sc

where s#= and c#

SQL复习题

创建数据库 创建表 创建视图 创建触发器的 保存在考试结果文件夹下,文件名为。1 创建数据库。为 商品 系统 创建后台数据库 1 数据库名为spgy。2 主数据文件逻辑名称为spgy data,物理名称为spgy 存放在c盘根目录下,初始大小为3mb,文件增长不受限制,增长量为1mb。3 事务日志文...

sql查询练习题

商信息表 supplier 商标号 supplierid intpk 商名称 suppliername varchar 20 联系 suppliertel varchar 10 通信地址 address varchar 50 邮政编码 postcorder varchar 20 所在城市 city ...

sql查询练习题

上图为企业订单管理系统的e r图,提供对职工信息 客户信息 商信息 产品信息 订单信息 订单明细进行管理。描述为主键,描述为外键,外键约束通过图下箭头线进行标注。其中职员信息表中的sex取值为m或f,表示为男和女。在创建的表中添加数据,在下面的查询中用到的数据,自己准备。1 查找员工的编号 姓名 部...