当前位置:文档之家 > 数据库查询语句例题与答案实验三

数据库查询语句例题与答案实验三

实验三数据查询语言

一、基本查询

使用相应SQL语句,完成如下操作:

(1)查询所有用户的用户ID和姓名。

select uid,name

from [user]

(2)查询注年龄最小3位用户的用户ID,姓名和年龄。

select top 3(uid),name,datediff(yyyy,birthday,getdate()) age

from [user]

order by birthday desc

(3)查询库存小于50本的所有书目信息。

select*

from book

where stock<50

(4)查询清华大学出版社的所有书目信息。

select*

from book

where press='清华大学出版社'

(5)查询价格在50-100元的所有的书名。

select title

from book

where price>50 and price<100

(6)查询姓“张”或“王”或“李”且单名的学生的情况。

select*

from [user]

where name like'张%'or name like'李%'or name like'王%'and len(name)=2

(7)查询所有书目的书名、出版社及价格,要求出版社升序排列,出版社相同时,按价格从高到底进行排序。

select title,press,price

from book

order by press,price desc

(8)查询所有有交易记录的用户ID。

select oid

from [order]

where state= 4

二、数据汇总

使用相应SQL语句,完成如下操作:

(1)查询理工类书目的最高价格、最低价格及平均价格。

select max(price)max_price,min(price)min_price,avg(price)avg_price from book

where category = 1

(2)查询所有理工类书目的库存总量。

select sum(stock)

from book

where category = 1

(3)查询‘1001’号图书被订购的总次数。

select sum(quantity)

from orderbook

where bookid = 1001

(4)查询不同状态订单的数量。

select state,count(state)

from [order]

group by state

(5)查询各类别数据的库存总量。

select sum(stock)

from book

group by category

(6)查询被订购2次以上(含2次)的图书编号、订购次数,并按照订购次数从高到低进行排序。

select bookid,sum(quantity)

from orderbook

group by bookid

having count(*)>=2

order by sum(quantity)desc

三、连接查询

使用相应SQL语句,完成如下操作:

(1)列出全部用户的用户ID、姓名和状态。

select uid,name,userstate

from [user],userstate

where [user].state = http://www.doczj.com/doc/8c406166453610661ed9f4ae.htmlid

(2)查询购买过‘1001’号图书的用户名、性别及购买时间,并按照购买时间降序排列。

select name,sex,ordertime

from [user],[order],orderbook

where orderbook.bookid ='1001'and [order].oid = orderbook.orderid and [order].state ='4'and [order].[user] = [user].uid

order by ordertime desc

(3)查询性别为‘男’且购买过社科类图书的用户ID、用户名及状态。

select uid,name,sex,userstate

from [user],userstate

where [user].uid in

(

select [user]

from [order]

where state='4'and [order].oid in

(select orderid

from orderbook

where bookid in

(select bid

from book

where category ='2'

)))and [user].sex ='1'and [user].state = http://www.doczj.com/doc/8c406166453610661ed9f4ae.htmlid

或者:

select uid,name,sex,userstate

from [user],userstate,book,orderbook,[order]

where [user].sex ='1'

and book.category ='2'

and [order].state ='4'

and orderbook.bookid = book.bid

and orderbook.orderid =[order].oid

and [user].state = http://www.doczj.com/doc/8c406166453610661ed9f4ae.htmlid

and [order].[user] = [user].uid

(4)查询价格在37元以上(含37元)且被购买过2次以上的图书名称、价格、出版社及购买次数,并按照购买次数降序排列。

写不出

(5)查询用户ID为‘102’的所有订单号、下单日期及状态。

select oid,[user],ordertime,orderstate

from [order],orderstate

where [order].[user] ='102'

and [order].state = orderstate.osid

(6)查询订单状态为已付款(未完成)的所有订单的订单号、下单用户、书目名称、书目类别、数量信息,并按照订单号排序。

select oid,name,title,category.category,stock

from [order],orderbook,[user],book,category

where [order].state ='3'

and [order].[user] = [user].uid

and orderbook.orderid = [order].oid

and orderbook.bookid = book.bid

and book.category = category.cid

order by oid

(看到付款未完成的就一张订单,需要排序?)

四、子查询

(1)查询订购次数在平均次数以上的图书编号、图书名称、图书价格及订购次数,并按订购次数排序。

(2)查询至少包含‘2014003’号订单包含的书目的订单号、下单用户、下单日期及

订单状态。

select distinct orderid,ordertime,name,orderstate from orderbook,[order],[user],orderstate where orderbook.bookid in(

select bookid

from orderbook

where orderbook.orderid ='2014004'

)

and [order].[user] =[user].uid

and orderstate.osid = [user].state

and orderbook.orderid = [order].oid

(3)查询购买过清华大学出版社的书籍的所有人的信息。select distinct [user].*

from [user],[order]

where [order].oid in

(

select orderid

from book,orderbook

where book.press ='清华大学出版社'

and book.bid = orderbook.bookid

)

and [order].[user] = [user].uid

(4)查询与王丽购买过同种书籍的所有人的信息。Select*

from [user]

where uid in

(select [user]

from [order]

where oid in

(select orderid

from orderbook

where bookid in(

select bookid

from [user],[order],orderbook

where [user].name ='王丽'

and [user].uid = [order].[user]

and [orderbook].orderid = [order].oid

)));

(5)找出每个客户超过他购买的书的平均价格的书目信息。

(6)查询购买张三购买了的全部书籍的客户信息。select [user].*

from [user]

where uid in

(select [user]

from [order]

where oid in

(select orderid

from orderbook

where bookid in

(select bookid

from orderbook

where orderid in

(Select oid

from [order]

where [user] in

(Select uid

from [user]

where name='张三')))));

五、集合查询

(1)查询性别为‘男’且购买过社科类图书或性别为‘女’且购买过理工类图书的用户ID、用户名及状态。

(2)查询性别为‘男’且购买过社科类图书的用户ID、用户名及状态。Select distinct uid,name,state

from [user],category,book

where sex=1

and category.category ='社会科学类'

and category.cid = book.category

(3)查询购买过社科类图书但不包含下单次数为1次的的用户ID、用户名及状态。

Select distinct uid,name,state

from [user],category,book,[order],

where category.category ='社会科学类'

and category.cid = book.category

group by [order].user

having count(*)>=2

数据库 实验三答案
数据库 实验三答案 实验 3 SQL 语言 一、实验目的 1、掌握 SQL 中运算符与表达式的使用。 2、掌握实用 SQL 语言查询数据库。 二、实验要求 1、所有的实验......
SQL数据库实验三_简单查询(1)解答
实验三 简单查询( ) 实验三 简单查询(1)解答实验结果 1. 查询全部职工的基本信息。 SQL 语句: SELECT * FROM Employee 查询结果: 其他: SELECT top 5 * ......
数据库_实验三答案
数据库_实验三答案_IT认证_资格考试/认证_教育专区。实验 3 SQL 语言 一、实验目的 1、掌握 SQL 中运算符和表达式的使用。 2、掌握实用 SQL 语言查询数据库。...
数据库实验3答案
实验三:交互式SQL 语句得使用 1、实验目得 (1)掌握数据库对象得操作过程,包括创建、修改、删除 (2)熟悉表得各种操作,包括插入、修改、删除、查询 (3)熟练掌握......
数据库-实验三答案
数据库-实验三答案_IT认证_资格考试/认证_教育专区。实验 3 SQL 语言 一、实验目的 1、掌握 SQL 中运算符和表达式的使用。 2、掌握实用 SQL 语言查询数据库。...
数据库实验3答案
. 实验三:交互式 SQL 语句的使用 1、实验目的(1)掌握数据库对象的操作过程,包括创建、修改、删除 (2)熟悉表的各种操作,包括插入、修改、删除、查询 (3)熟练......
数据库试验3答案
实验三:交互式 SQL 语句的使用 1、实验目的(1)掌握数据库对象的操作过程,包括创建、修改、删除 (2)熟悉表的各种操作,包括插入、修改、删除、查询 (3)熟练掌握......
数据库实验三答案
数据库实验三答案_IT认证_资格考试/认证_教育专区。. 实验 3 SQL 语言 一、实验目的 1、掌握 SQL 中运算符和表达式的使用。 2、掌握实用 SQL 语言查询数据库......
最新数据库-实验三答案
最新数据库-实验三答案_幼儿读物_幼儿教育_教育专区。精品文档实验 3 SQL 语言 一、实验目的 1、掌握 SQL 中运算符和表达式的使用。 2、掌握实用 SQL 语言查询......
数据库 实验三:简单查询..
实验三、 简单查询和连接查询机械工业出版社 1. 实验目的了解SQL Server 查询分析器的使用 方法,加深对SQL和Transact-SQL语言 的查询语句的理解。掌握表的数据简单......
数据库SQL查询例题及解答
数据库SQL查询例题及解答_计算机软件及应用_IT/计算机_专业资料。.. 1 实验目的 . .. .. 1. 熟悉数据库的交互式 SQL 工具。 2. 熟悉通过 SQL 对数据库......
数据库SQL查询例题及解答
2 实验工具 sql server 数据库 SQL 查询例题及解答 1 实验目的 1. 熟悉数据库的交互式 SQL 工具。 2. 熟悉通过 SQL 对数据库进行操作。 3. 完成作业的上机......
SQL实验与练习题参考答案
SQL实验与练习题参考答案 实验1 数据库操作 1.创建数据库: 操作1.1:创建一...查看数据库属性: 操作1.2:使用T-SQL语句查看数据库test属性 参考答案: EXEC ......
数据库 实验三答案
. 实验 3 SQL 语言 一、实验目的 1、掌握 SQL 中运算符和表达式的使用。 2、掌握实用 SQL 语言查询数据库。 二、实验要求 1、所有的实验过程请严格按照实验......
数据库实验答案..
数据库实验答案.._职业技术培训_职业教育_教育专区。数据库实验答案.. 实验(2)、交互式 SQL(1): 利用 SQL 语句创建数据库、表及表 之间关系一、实验目的和......
SQL实验答案(实验二、三)
* from Student where Sdept=‘地理信息系统’ and rtrim(Sname) like ‘李_ _’ and Ssex=‘男'; 实验三答案连接查询和嵌套查询 本次实验用到的数据库 ?...
数据库-实验三答案
数据库-实验三答案 实验 3 SQL 语言一、实验目的 1、掌握 SQL 中运算符和表达式的使用。 2、掌握实用 SQL 语言查询数据库。二、实验要求 1、所有的实验过程请......
数据库 实验三答案
SQL SERVER 2000 中文版 四、实验原理、方法上机操作 五、实验内容准备工作:还原学生成绩管理数据库; 注意:写 SQL 语句时,注意学生成绩管理数据库中表名称和字段......
数据库SQL查询例题及解答
记录完成查询要求的 SQL 语句脚本。 记录完成查询查询结果。 b. c. 《数据库系统概论》实验报告题 目:交互式 SQL 学号: 日期:2012 年 4 月 29 日 实验......