mybatis练习2

题目:图书馆管理系统

数据库表结构
  1. 书籍表(book)
  • id (主键, 自增)
  • title (书名)
  • author(作者)
  • publish_date(出版日期)
  • category_id(分类ID)
  1. 分类表(category)
  • id (主键, 自增)
  • name(分类名称)
  1. 借阅记录表(borrow_record)
  • id (主键, 自增)
  • book_id (书籍ID, 外键)
  • user_id (用户ID, 外键)
  • borrow_date (借阅日期)
  • return_date(归还日期)
  1. 用户表(user)
  • id(主键, 自增)
  • name(用户姓名)
  • gender(性别)
  • age(年龄)

题目要求
  1. 动态查询书籍信息
  • 要求:根据传入的参数动态查询书籍信息。参数包括书名(模糊查询)、作者、分类名称、出版日期范围。
  • 示例:查询书名包含"Java"、作者为"John"、分类为"计算机"、出版日期在2010年到2020年之间的书籍。
  1. 分页查询所有书籍及其借阅记录
  • 要求:分页查询所有书籍的书名、作者、分类名称、借阅次数,每页显示10条记录。
  1. 统计每个分类的书籍数量
  • 要求:统计每个分类的书籍数量,并按照数量从高到低排序。
  • 提示:需要关联书籍表和分类表。
  1. 查询未借阅的书籍
  • 要求:查询所有未被借阅过的书籍信息。
  1. 查询每本书的借阅次数
  • 要求:查询每本书的借阅次数,并按照借阅次数从高到低排序。
  1. 动态更新书籍信息
  • 要求:根据传入的参数动态更新书籍信息。参数包括书籍ID、书名、作者、出版日期、分类ID,只更新非空的字段。
  • 提示:使用 MyBatis 的动态 SQL
  1. 查询每个用户的借阅记录
  • 要求:查询每个用户的姓名、借阅的书籍名称、借阅日期、归还日期。
  • 提示:需要关联用户表、书籍表和借阅记录表。
  1. 查询借阅次数最多的前10本书
  • 要求:查询所有书籍中,借阅次数最多的前10本书的信息(包括书名、作者、分类名称、借阅次数)。
  1. 查询每本书的最后一次借阅记录
  • 要求:查询每本书的最后一次借阅记录(包括书名、借阅者姓名、借阅日期)。
  • 提示:需要对借阅记录表按书籍ID分组,并取每组中最大的借阅日期。
相关推荐
小羽网安13 分钟前
从零开始学习 sql 注入,常见的 sql 注入解析
数据库·sql·学习
半瓶榴莲奶^_^1 小时前
jvm java虚拟机
java·jvm
2401_846339561 小时前
CSS如何优化大型项目样式_使用SASS预处理器提升开发效率
jvm·数据库·python
invicinble7 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
wbs_scy7 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·开发语言
ss2737 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
AI人工智能+电脑小能手8 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法
l1t8 小时前
DeepSeek总结的数据库外部表
数据库
m0_674294648 小时前
如何编写SQL存储过程性能对比_记录执行时间评估优化效果
jvm·数据库·python
try2find8 小时前
打印ascii码报错问题
java·linux·前端