实验五 SQL语句应用

山东建筑大学 计算机学院 实验报告

班级:软测143 姓名:刘骎 学号:20141113089 实验成绩: 课程:Oracle DBA 同组者: 实验日期:2017/4/26

(15)查询电子工业出版社在2012年出版的所有“计算机”类图书的名称。

方法1:错误:SELECT * FROM BOOKS,PUBLISHERS WHERE PUBLISHERS.publisher_id=BOOKS.publisher_id and PUBLISHERS.name='电子工业出版社'and BOOKS.pubdate=to_date(like '2012-__-__','yyyy-mm-dd') and books.category='计算机'; 正确:SELECT * FROM BOOKS,PUBLISHERS WHERE PUBLISHERS.publisher_id=BOOKS.publisher_id and PUBLISHERS.name='电子工业出版社'andto_char(books.pubdate,'yyyy-mm-dd') like '2012%' and books.category='计算机';

方法2:

(16)查询图书名称、出版社名称、出版社联系人的名称和电话号码。

山东建筑大学 计算机学院 实验报告

班级:软测143 姓名:刘骎 学号:20141113089 实验成绩: 课程:Oracle DBA 同组者: 实验日期:2017/4/26

(17)查询当前还没有发货的订单信息及下达订单的用户名,查询结果按下达订单日期排序。

select ORDERS.order_id,CUSTOMERS.name,ORDERS.orderdate from ORDERS,CUSTOMERS WHERE ORDERS.customer_id=CUSTOMERS.customer_id andORDERS.shipdate<=select to_char(sysdate,'yyyy-mm-dd')from dual order by orderdate;

(18)查询已经购买了“计算机”类图书的所有人的客户号和姓名。

select CUSTOMERS.customer_id,CUSTOMERS.name from BOOKS,CUSTOMERS,ORDERS,ORDERITEM WHERE BOOKS.ISBN=ORDERITEM.ISBN AND ORDERITEM.ORDER_ID=ORDERS.ORDER_ID AND ORDERS.CUSTOMER_ID=CUSTOMERS.CUSTOMER_ID AND BOOKS.CATEGORY='计算

山东建筑大学 计算机学院 实验报告

班级:软测143 姓名:刘骎 学号:20141113089 实验成绩: 课程:Oracle DBA 同组者: 实验日期:2017/4/26

机';

(19)查询“王牧”购买的图书的ISBN以及书名。

SQL> SELECT BOOKS.ISBN,BOOKS.TITLE FROM BOOKS,CUSTOMERS,ORDERS,ORDERITEM WHERE CUSTOMERS.CUSTOMER_ID=ORDERS.CUSTOMER_ID AND ORDERS.ORDER_ID=ORDERITEM.ORDER_ID AND ORDERITEM.ISBN=BOOKS.ISBN AND CUSTOMERS.NAME='王牧';

(20)查询订购图书“Oracle数据库基础”的客户将收到什么样的礼品。

Select customer_id,name from Promotion join

(select customer_id,sum(quantity*retail) total

From order join orderitem on order.order_id=orderitem.order_id Join book on orderitem.isbn=book.isbn

Where customer_id in(select customer_id from orders where order_id in(select order_id from orderitem where isbn=’Oracle数据库基础’)) Group by customer_id)detail

On total between minretail and maxretail;

(21)确定客户“张扬”订购的图书的作者。

(22)查询CUSTOMERS表中的每一个客户所下达的订单数量。 select

山东建筑大学 计算机学院 实验报告

班级:软测143 姓名:刘骎 学号:20141113089 实验成绩: 课程:Oracle DBA 同组者: 实验日期:2017/4/26

CUSTOMERS.customer_id,CUSTOMERS.name,BOOKS.TITLE,ORDERITEM.QUANTITY FROM CUSTOMERS,ORDERS,BOOKS,ORDERITEM WHERE CUSTOMERS.CUSTOMER_ID=ORDERS.CUSTOMER_ID AND ORDERS.ORDER_ID=ORDERITEM.ORDER_ID AND ORDERITEM.ISBN=BOOKS.ISBN;

(23)查询价格低于同一种类图书平均价格的图书的信息。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4