ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

数据库 单表查询

2021-05-03 20:03:33  阅读:378  来源: 互联网

标签:数据库 查询 INTO book VALUES 单表 clerk NULL id


在答案除处粘贴每道题目、以及对应的sql语句。

1.查询图书的名字、出版社、价格

2.查询所有图书的书名和价格上涨20%后的价格,并为涨价后的价格列指定新列名“new_price”

  1. 查询图书中所有出版社的名字,每个出版社只显示一次

条件查询:

  1. 查询出版日期在2006年1月1日以后的图书信息

  2. 查询所有清华大学出版社出版的图书名字、作者、出版社、出版日期

  3. 查询名字以“计算机”开头的图书信息

  4. 查询价格在20到30之间的图书信息

8.查询价格在40元以上,或者2006年以后出版的图书名字、作者、出版社、出版日期、价格

9.查询出版社为清华大学出版社、科学出版社的图书名字、出版社、价格

附件为建表的语句,本次实验仅用到图书表,因此只需要创建图书表,并插入图书信息即可。
所需代码如下:

--创建图书数据库
CREATE DATABASE library

--使用图书数据库
USE library

--创建图书表:book表
CREATE TABLE book
(
	book_id varchar(8) PRIMARY KEY,
	book_name varchar(50) NULL,
	author varchar(30) NULL,
	press varchar(50) NULL,
	press_date datetime NULL,
	flag_borrow varchar(1) NULL,
	price money NULL
)

--创建职员信息表clerk
CREATE TABLE clerk
(
	clerk_id VARCHAR(8) PRIMARY KEY,
	clerk_name VARCHAR(8) NULL,
	id_card VARCHAR(18) NULL,
	clerk_password VARCHAR(30) NULL,
	officer VARCHAR(30) NULL
)


--创建读者信息表reader
CREATE TABLE reader
(
	reader_id VARCHAR(8) PRIMARY KEY,
	reader_name VARCHAR(8) NULL,
	id_card VARCHAR(18) NULL,
	maxnum_can_borrow SMALLINT NULL,
	flag_borrow VARCHAR(2) NULL
)


--创建图书借还信息表borrow
CREATE TABLE borrow
(
	id INT IDENTITY(1,1) NOT NULL,
	reader_id VARCHAR(8),
	book_id VARCHAR(8),
	borrow_date DATETIME NULL,
	b_clerk_id VARCHAR(8) NULL,
	r_clerk_id VARCHAR(8) NULL,--还书员工号
	return_date DATETIME NULL,
	flag_return CHAR(2) NULL,
	CONSTRAINT FK_BORROW_READER FOREIGN KEY(reader_id) REFERENCES reader(reader_id),
	CONSTRAINT FK_BORROW_BOOK FOREIGN KEY(book_id) REFERENCES book(book_id),
	CONSTRAINT FK_BORROW_CLERK FOREIGN KEY(b_clerk_id) REFERENCES clerk(clerk_id),
	CONSTRAINT FK_RETURN_CLERK FOREIGN KEY(r_clerk_id) REFERENCES clerk(clerk_id)
)

INSERT INTO BOOK 
(book_id,book_name,author,press,press_date,flag_borrow,price)
VALUES
('13020889','局域网设计教程','王宝智','清华大学出版社','2004-8-1','Y',27.00)
INSERT INTO BOOK VALUES ('10201001','操作系统原理','苏光亮','清华大学出版社','2006-8-1','Y',46.00)
INSERT INTO BOOK VALUES ('10300649','计算机网络','华陪','科学出版社','2003-7-20','Y',29.00)
INSERT INTO BOOK VALUES ('10300715','计算机图形学','刘世光','机械出版社','2005-2-11','Y',30.00)
INSERT INTO BOOK VALUES ('10301174','算法设计','刘景','机械出版社','2000-9-1','Y',19.00)
INSERT INTO BOOK VALUES ('10310518','计算机组成原理','白中英','科学出版社','2009-12-1','Y',50.00)
INSERT INTO BOOK VALUES ('10301210','C语言程序设计','汪大菊','科学出版社','2006-8-1','Y',46.00)
INSERT INTO BOOK VALUES ('10301001','软件工程','饶国政','清华大学出版社','2002-8-1','Y',28.00)
INSERT INTO BOOK VALUES ('10301215','JAVA程序设计','朱喜福','清华大学出版社','2010-5-1','Y',35.00)


---------------------------------
--向读者表中插入数据
---------------------------------
INSERT INTO reader VALUES('093001','刘芳',NULL,5,'Y')
INSERT INTO reader VALUES('093002','李玲',NULL,5,'Y') 
INSERT INTO reader VALUES('093003','王佳宏',NULL,5,'Y')
INSERT INTO reader VALUES('093004','刘洪昌',NULL,5,'Y')
INSERT INTO reader VALUES('093005','王丽睿',NULL,5,'Y')

---------------------------------
--向职员表中插入数据
---------------------------------
INSERT INTO clerk VALUES('092001','王俊','150233198008283456','123456','管理员')
INSERT INTO clerk VALUES('092002','李佳','120512197609011234','123456','职员')
INSERT INTO clerk VALUES('092003','赵强','130523198206011235','123456','职员')
INSERT INTO clerk VALUES('092004','刘永','161612197909018631','123456','职员')
INSERT INTO clerk VALUES('092005','张倩','182512197806011235','123456','职员')

---------------------------------
--修改图书表中某图书的借阅状态
---------------------------------
UPDATE book SET flag_borrow = 'N' WHERE book_id = '10310518'
UPDATE book SET flag_borrow = 'N' WHERE book_id = '13020889'

---------------------------------
--向借阅表中插入数据
---------------------------------
INSERT INTO borrow (reader_id,book_id,borrow_date,b_clerk_id,r_clerk_id,return_date,flag_return)
	VALUES('093001','10301001','2010-12-28','092002','092003','2011-2-28','Y')
INSERT INTO borrow (reader_id,book_id,borrow_date,b_clerk_id,r_clerk_id,return_date,flag_return)
	VALUES('093002','10300715','2011-3-1','092005','092003','2011-3-25','Y')
INSERT INTO borrow (reader_id,book_id,borrow_date,b_clerk_id,r_clerk_id,return_date,flag_return)
	VALUES('093002','10310518','2011-3-5','092005','092001',NULL,'N')
INSERT INTO borrow (reader_id,book_id,borrow_date,b_clerk_id,r_clerk_id,return_date,flag_return)
	VALUES('093004','13020889','2011-3-20','092004','092005',NULL,'N')
INSERT INTO borrow (reader_id,book_id,borrow_date,b_clerk_id,r_clerk_id,return_date,flag_return)
	VALUES('093004','10301174','2011-2-28','092004','092002','2011-3-20','Y')
INSERT INTO borrow (reader_id,book_id,borrow_date,b_clerk_id,r_clerk_id,return_date,flag_return)
	VALUES('093005','10301215','2011-3-8','092005','092004','2011-3-24','Y')


代码给大家啦。

SELECT book_name,press,price
FROM book
SELECT book_name,price*1.2new_price
FROM book
/*查询书中所有出版社的名字,每个出版社只出现一次*/
SELECT DISTINCT press
FROM book
/*查询出版日期在2006年1月1日以后的图书信息*/
SELECT *
FROM book
WHERE press_date>2006-01-01;
/*查询所有清华大学出版社的图书名字、作者、出版社、出版日期*/
SELECT book_name,author,press,press_date
FROM book
WHERE (press='清华大学出版社');
/*查询名字以“计算机”开头的图书信息*/
SELECT *
FROM book
WHERE book_name like '计算机%';
/*查询价格在20-30之间的图书信息*/
SELECT *
FROM book
WHERE price >20 and price<30;
/*查询价格在40元以上,或者2006年以后出版的图书名字,作者,出版社
出版日期,价格*/
SELECT *
FROM book
WHERE price >40 and press_date>2006-00-00;
/*查询出版社为清华大学出版社,科学出版社的图书名字,出版社,价格*/
SELECT *
FROM book
WHERE press='清华大学出版社'or press ='科学出版社';

标签:数据库,查询,INTO,book,VALUES,单表,clerk,NULL,id
来源: https://www.cnblogs.com/qq1480040000/p/14728034.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有