实验五sql语句应用

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验5 SQL语句应用

1 实验目的

(1)掌握数据的插入、修改和删除操作。

(2)掌握不同类型的数据查询操作。

2 实验要求

(1)利用SQL语句对图书销售系统表进行插入、修改、删除和查询操

作。

3 实验步骤

(1)以bs用户登录BOOKSALES数据库,将表1至表6中的数据插入到数据库的相应表中。

表1CUSTOMERS

表2PUBLISHERS

表3BOOKS

表4ORDERS

ORDERITEM

表5

表6PROMOTION

(2)将ISBN为978-7-的图书的零售价格(retail)修改为30。Update books set retail=30 where isbn=’978-7-’;

(3)将订单号为1000的订单的发货日期修改为“2013-2-2”。

Update orders set shipdate=to_date('2013-02-02','yyyy-mm-dd') where order_id=1000;

(4)已知当前有一个图书表OLDPUBLISHERS,其表中数据如下:

publisher_id name contact phone

李明0

1电子工业出版

孙浩

2机械工业出版

张春3449876

3人民邮电出版

请将表中的数据与PUBLISHERS中的数据进行合并。

创建表:

CREATE TABLE OLDPUBLISHERS (

2 publisher_id CHAR(10) PRIMARY KEY,

3 name VARCHAR2(25),

4 contact VARCHAR2(25),

5 phone CHAR(25))

6 TABLESPACE USERS;

插入数据:

INSERT INTO OLDPUBLISHERS VALUES (2,'机械工业出版社','孙浩',);

INSERT INTO OLDPUBLISHERS VALUES (3,'人民邮电出版社','张春',3449876);

INSERT INTO OLDPUBLISHERS VALUES (4,'传智播客','吴瑞',997990);

合并:

MERGE INTO PUBLISHERS P USING OLDPUBLISHERS O ON = WHEN MATCHED THEN UPDATE SET

=,=,=

WHEN NOT MATCHED THEN INSERT

VALUES,,,;

(6)列出BOOKS表中每本书的书名和出版日期,对pubdate字段使用Publication Date列标题。

(7)列出CUSTOMERS表中每一个客户的客户号及他们所在的地址。

(8)创建一个包含各个出版社的名称、联系人及出版社电话号码的列表。其中,联系人的列在显示的结果中重命名为Contact Person

CREATE table qwer as select name,contact "Contact Person",phone from publisher;或

CREATE table qwer as select name,contact as Contact

Person,phone from publisher;

(9)查询下达了订单的每一个客户的客户号。

(10)查询2013年3月1日之后发货的订单。

(11)查询居住在北京或大连的客户,将结果按姓名的升序排列。

(12)列出姓“王”的作者编写的所有图书信息,并将结果按姓名降序排序。

Select * from BOOKS WHERE author LIKE ‘王%’order by title desc;

(13)查询“儿童”类和“烹饪”类的所有图书。

(14)查询书名的第二个字母是“A”、第四个字母是“N”的图书SELECT * FROM BOOKS WHERE TITLE LIKE '_A%'AND TITLE LIKE '___N%';

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

方法1:错误:SELECT * FROM BOOKS,PUBLISHERS WHERE = and ='电子工业出版社'and =to_date(like '2012-__-__','yyyy-mm-dd') and ='计算机';

正确:SELECT * FROM BOOKS,PUBLISHERS WHERE = and ='电子工业出版社'and to_char,'yyyy-mm-dd') like '2012%' and ='计算机';

方法2:

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

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

select ,, from ORDERS,CUSTOMERS WHERE = and <=select to_char(sysdate,'yyyy-mm-dd')from dual order by orderdate;

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

select , from BOOKS,CUSTOMERS,ORDERS,ORDERITEM WHERE = AND = AND = AND ='计算机';

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

SQL> SELECT , FROM BOOKS,CUSTOMERS,ORDERS,ORDERITEM WHERE = AND = AND = AND ='王牧';

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

Select customer_id,name from

Promotion join

(select customer_id,sum(quantity*retail) total

相关文档
最新文档