69期-Java SE-036_MySQL-7 SQL练习 -doing
Posted hijackykun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了69期-Java SE-036_MySQL-7 SQL练习 -doing相关的知识,希望对你有一定的参考价值。
第一道: 现有图书管理数据库的三个关系模式,他们的字段分别如下: 图书表:总编号, 分类号, 书名, 作者, 出版单位, 单价 读者表:借书证号, 单位, 姓名, 性别, 职称, 地址 借阅表:借书证号, 总编号, 借书日期 以上表对应的字段明细如下: book : b_no ,b_type ,b_name , b_author ,b_publish ,b_price reader : r_no , r_unit , r_name ,r_sex ,r_pro ,r_address borrow : r_no , b_no ,b_time 1、查找出价格位于10元和20元之间的图书种类,结果按 单价升序排序 2、找出藏书中各个出版社的册数、价值总额 3、求出各个出版社图书的最高价格、最低价格和册数 4、查找所有借了书的读者的姓名以及所在单位 5、找出李某所借所有图书的书名及借书日期 6、查询1997年10月以后借书的读者借书证号、姓名和单位 7、找出借阅了FoxPro大全一书的借书证号以及作者 8、分别找出借书人次超过1人次的单位及人次数 9、找出与赵正义在同一天借书的读者姓名、所在单位以及借书 日期 10、求信息系当前借阅图书的读者人次数 11、找出当前至少借阅了2本书的读者姓名及所在单位 12、找出姓李的读者姓名和所在单位 13、求科学出版社图书的最高单价、最低单价和平均单价 14、查找出高等教育出版社的所有图书及单价,结果按单价降序 排列 15、列出图书库中所有藏书的书名以及出版单位 第二道: 本题用到下面三个关系表: 借书卡表:卡号 、姓名 、班级 图书表:书号、书名、作者、单价、库存册数 借书记录表: 借书卡号、 书号、 还书日期 以上表对应的字段明细如下: card ( CNO , NAME , CLASS ) books ( BNO ,BNAME , AUTHOR ,PRICE ,QUANTITY ) borrows ( CNO ,BNO ,RDATE ) 备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。 1.找出借书超过5本的读者,输出借书卡号及所借图书册数。 2.查询借阅了"水浒"一书的读者,输出姓名及班级。 3.查询过期未还图书,输出借阅者(卡号)、书号及还书日期。 4.查询书名包括"网络"关键词的图书,输出书号、书名、作者。 5.查询现有图书中价格最高的图书,输出书名及作者。 7. 查询当前借了"计算方法"但没有借"计算方法习题集"的读者, 输出其借书卡号,并按卡号降序排序输出。 8.将"C01"班同学所借图书的还期都延长一周。 9.从BOOKS表中删除当前无人借阅的图书记录。 10.查询当前同时借有"计算方法"和"组合数学"两本书的读者, 输出其借书卡号,并按卡号升序排序输出。
-- mysql dump 10.13 Distrib 8.0.11, for macos10.13 (x86_64) -- -- Host: 127.0.0.1 Database: mysql_exam2 -- ------------------------------------------------------ -- Server version 8.0.11 /*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; /*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; /*!40101 SET @[email protected]@COLLATION_CONNECTION */; SET NAMES utf8mb4 ; /*!40103 SET @[email protected]@TIME_ZONE */; /*!40103 SET TIME_ZONE=‘+00:00‘ */; /*!40014 SET @[email protected]@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @[email protected]@SQL_MODE, SQL_MODE=‘NO_AUTO_VALUE_ON_ZERO‘ */; /*!40111 SET @[email protected]@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `books` -- DROP TABLE IF EXISTS `books`; /*!40101 SET @saved_cs_client = @@character_set_client */; SET character_set_client = utf8mb4 ; CREATE TABLE `books` ( `BNO` varchar(12) NOT NULL, `BNAME` varchar(12) DEFAULT NULL, `AUTHOR` varchar(12) DEFAULT NULL, `PRICE` varchar(12) DEFAULT NULL, `QUANTITY` varchar(12) DEFAULT NULL, PRIMARY KEY (`BNO`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `books` -- LOCK TABLES `books` WRITE; /*!40000 ALTER TABLE `books` DISABLE KEYS */; INSERT INTO `books` VALUES (‘1100011‘,‘计算机网络‘,‘阿一‘,‘86.9‘,‘10‘),(‘1100022‘,‘红楼梦‘,‘阿二‘,‘53.6‘,‘5‘),(‘1100033‘,‘组合数学‘,‘阿三‘,‘26.3‘,‘15‘),(‘1100044‘,‘水浒‘,‘阿四‘,‘98.7‘,‘3‘),(‘1100055‘,‘三国‘,‘阿五‘,‘46.8‘,‘2‘),(‘1100066‘,‘计算方法‘,‘阿一‘,‘59.6‘,‘8‘),(‘1100077‘,‘计算方法习题集‘,‘阿一‘,‘23.5‘,‘8‘),(‘123‘,NULL,NULL,NULL,NULL); /*!40000 ALTER TABLE `books` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `borrows` -- DROP TABLE IF EXISTS `borrows`; /*!40101 SET @saved_cs_client = @@character_set_client */; SET character_set_client = utf8mb4 ; CREATE TABLE `borrows` ( `CNO` varchar(12) DEFAULT NULL, `BNO` varchar(12) DEFAULT NULL, `RDATE` date DEFAULT NULL, KEY `CNO` (`CNO`), KEY `BNO` (`BNO`), CONSTRAINT `borrows_ibfk_1` FOREIGN KEY (`CNO`) REFERENCES `card` (`cno`), CONSTRAINT `borrows_ibfk_2` FOREIGN KEY (`BNO`) REFERENCES `books` (`bno`), CONSTRAINT `borrows_ibfk_3` FOREIGN KEY (`BNO`) REFERENCES `books` (`bno`), CONSTRAINT `borrows_ibfk_4` FOREIGN KEY (`BNO`) REFERENCES `books` (`bno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `borrows` -- LOCK TABLES `borrows` WRITE; /*!40000 ALTER TABLE `borrows` DISABLE KEYS */; INSERT INTO `borrows` VALUES (‘sx001‘,‘1100011‘,‘2019-02-15‘),(‘sx001‘,‘1100022‘,‘2019-02-15‘),(‘sx001‘,‘1100033‘,‘2019-02-15‘),(‘sx001‘,‘1100044‘,‘2019-02-15‘),(‘sx001‘,‘1100055‘,‘2019-02-15‘),(‘sx001‘,‘1100066‘,‘2019-02-15‘),(‘sx002‘,‘1100066‘,‘2019-12-01‘),(‘sx002‘,‘1100077‘,‘2019-07-09‘),(‘sx003‘,‘1100066‘,‘2019-06-15‘),(‘sx004‘,‘1100055‘,‘2019-06-15‘),(‘sx001‘,‘123‘,NULL); /*!40000 ALTER TABLE `borrows` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `card` -- DROP TABLE IF EXISTS `card`; /*!40101 SET @saved_cs_client = @@character_set_client */; SET character_set_client = utf8mb4 ; CREATE TABLE `card` ( `CNO` varchar(12) NOT NULL, `NAME` varchar(12) DEFAULT NULL, `CLASS` varchar(12) DEFAULT NULL, PRIMARY KEY (`CNO`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `card` -- LOCK TABLES `card` WRITE; /*!40000 ALTER TABLE `card` DISABLE KEYS */; INSERT INTO `card` VALUES (‘008‘,‘张铭‘,‘c02‘),(‘sx001‘,‘汪伟‘,‘c01‘),(‘sx002‘,‘张三‘,‘c02‘),(‘sx003‘,‘李四‘,‘c02‘),(‘sx004‘,‘王五‘,‘c02‘),(‘sx005‘,‘小明‘,‘c02‘),(‘sx006‘,‘小红‘,‘c02‘); /*!40000 ALTER TABLE `card` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET [email protected]_TIME_ZONE */; /*!40101 SET [email protected]_SQL_MODE */; /*!40014 SET [email protected]_FOREIGN_KEY_CHECKS */; /*!40014 SET [email protected]_UNIQUE_CHECKS */; /*!40101 SET [email protected]_CHARACTER_SET_CLIENT */; /*!40101 SET [email protected]_CHARACTER_SET_RESULTS */; /*!40101 SET [email protected]_COLLATION_CONNECTION */; /*!40111 SET [email protected]_SQL_NOTES */; -- Dump completed on 2019-06-16 22:04:59
以上是关于69期-Java SE-036_MySQL-7 SQL练习 -doing的主要内容,如果未能解决你的问题,请参考以下文章
69期-Java SE-008_面向对象-2-001-002