SQL语句练习

表结构设计:(10分)

    使用SQL语句创建两个数据表:“书籍表”、“读者表”,表结构如下所示:

(1)书籍表:(5分)

字段名称

数据类型

长度

是否为空

说明

图书编号

char

15

可以

主键

书名

varchar

100

可以

作者

varchar

100

可以

价格

decimal

精度为0.01

可以

整数位3

小数位2

种类

char

20

可以

出版社

varchar

50

可以

出版日期

date

可以

库存量

int

可以

(2)读者表:(5分)

字段名称 

数据类型 

长度 

是否为空

说明

借书证号

char

30

非空

主键

姓名

varchar

50

可以

性别

char

2

可以

默认为男

出生日期

date

可以

默认格式

2022-12-1

单位

varchar

100

可以

类别

char

6

可以

电话

char

15

可以为空

(1)

CREATE  TABLE书籍(
   图书编号 CHAR(15)PRIMARY KEY,
   书名 VARCHAR(100),
   作者 VARCHAR(100),
   价格 DECIMAL(5,2),
   种类 CHAR(20),
   出版社 VARCHAR(50),
   出版日期 DATE,
   库存量 INT
   );

 

 

(2)

CREATE  TABLE 读者(
借书证号 CHAR(30) NOT NULL PRIMARY KEY,
姓名 VARCHAR(50),
性别 CHAR(2) DEFAULT '男',
出生日期 DATE,
单位 VARCHAR(100),
类别 CHAR(6),
电话 CHAR(15)
);

 

 

输入记录:(10分)

(1)“书籍”表数据:(5分)

图书编号

书名

作者

价格

种类

出版社

出版日期

库存量

0001

SQL

周雅静

48

计算机类

电子工业出版社

2015-09-09

10

0002

英语

刘璇

43

语言类

清华大学出版社

2016-02-02

8

0003

网页

张梦迪

38

计算机类

人民邮电出版社

2016-07-09

3

0004

数电

王欢

26

电子类

高等教育出版社

2015-08-03

3

0005

模电

李媛

35

电子类

高等教育出版社

2015-08-03

6

(2)读者表数据:(5分)

借书证号

姓名

性别

出生

日期

单位

类别

电话

  01

 张三

    电子系

学生

13789898765

02

李四

1985-1-1

计应用系

老师

13989598732

03

王五

电子系

老师

  

04

陈六

2000-1-1

电子商务系

学生

   

 

INSERT  INTO 书籍(图书编号,书名,作者,价格,种类,出版社,出版日期,库存量)
VALUES('0001','SQL','周雅静',48.00,'计算机类','电子工业出版社','2015-09-09',10),
('0002','英语','刘璇',43.00,'语言类','清华大学出版社','2016-02-02',8),
('0003','网页','张梦迪',38.00,'计算机类','人民邮电出版社','2016-07-09',3),
('0004','数电','王欢',26.00,'电子类','高等教育出版社','2015-08-03',3),
('0005','模电','李媛',35.00,'电子类','高等教育出版社','2015-08-03',6);

 

INSERT INTO 读者(借书证号,姓名,性别,出生日期,单位,类别,电话)
VALUES('01','张三','男',NULL,'电子系','学生','13789898765'),
('02','李四','女','1985-01-01','计应用系','老师','13989598732'),
('03','王五','男',NULL,'电子系','老师',NULL),
('04','陈六','男','2000-01-01','电子商务系','学生',NULL);

 

查询数据(共计20分,使用SQL语句进行操作,在dos或者Navicat终端下均可)

  1. 在书籍表中查询图书编号为0003的图书信息。(5分)
  2. 查询读者的姓名及单位。(5分)
  3. 查找价格在30元以上且库存量超过5本的图书,并按照价格降序排序。(5分)
  4. 分别统计男女读者的人数。(5分)

 1、

SELECT * FROM 书籍 WHERE 图书编号='0003';

 

 2、

SELECT 姓名,单位 FROM 读者;

 

3、

SELECT * FROM 书籍 WHERE 价格>30.00 AND 库存量>5 ORDER BY 价格 DESC;

 

 4、

SELECT  COUNT(*) 男读者人数 FROM 读者 WHERE 性别='男';
SELECT  COUNT(*) 女读者人数 FROM 读者 WHERE 性别='女';

 

 

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值