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分组,并取每组中最大的借阅日期。
相关推荐
海南java第二人39 分钟前
Nebula Graph 实战:基于图数据库存储 CMDB 实体关系
数据库·图数据库·nebula
wang090741 分钟前
自己动手写一个spring之IOC_2
java·后端·spring
来杯@Java1 小时前
学生选课管理系统(基于springboot+vue前后端分离的项目)计算机毕业设计java
java·spring boot·spring·vue·毕业设计·maven·mybatis
曹牧1 小时前
oracle:“not all variables bound”
数据库·oracle
数据库百宝箱1 小时前
Oracle RMAN Image Copy 本地恢复
数据库·oracle
不知名的老吴2 小时前
线程的生命周期之线程“插队“
java·开发语言·python
ANnianStriver2 小时前
PetLumina-02-后端开发与前后端联调
java·ai·sa-token
zuYM4g7Dp2 小时前
NoSql数据库设计心得
数据库·nosql
杨了个杨89823 小时前
Keepalived + Nginx + HAProxy 高可用架构部署实战案例
java·nginx·架构
睡不醒男孩0308234 小时前
第七篇:揭秘 PostgreSQL 数据库内核级管控:CLup 深度架构设计与高可用底座技术白皮书
数据库·postgresql·clup