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分组,并取每组中最大的借阅日期。
相关推荐
yuniko-n2 分钟前
【JUC】线程间通信
java·开发语言
yuniko-n4 分钟前
【JUC】关于 Java 线程介绍
java·开发语言
HelloWorld工程师9 分钟前
@Primary 注解
java·spring
IvorySQL9 小时前
PostgreSQL 日报|修复截断 zstd 备份检测(10 月 9 日)
数据库·postgresql
刘胡子大叔10 小时前
SQL 脚本的导入顺序
数据库·sql
代码什么用10 小时前
Spring基础使用
java·后端·spring
代码什么用10 小时前
Spring对IoC的实现
数据库·spring
Su米苏10 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
码云数智-园园11 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
老板一杯拿铁11 小时前
Java 异常体系详解:从字节码原理到最佳实践
java