题解 | 统计借阅量

统计借阅量

https://www.nowcoder.com/practice/280ed56ab3ee49a4b2a4595d38e1d565

select b1.book_id,book_title,
sum(if(borrow_date like '2023-02%',1,0)) feb_2023_borrows,
sum(if(borrow_date like '2024-02%',1,0)) feb_2024_borrows,
sum(if(borrow_date like '2024-01%',1,0)) jan_2024_borrows,
ifnull(sum(if(borrow_date like '2024-02%',1,0))-sum(if(borrow_date like '2023-02%',1,0)),0) yoy_delta,
ifnull(sum(if(borrow_date like '2024-02%',1,0)) - sum(if(borrow_date like '2024-01%',1,0)),0) mom_delta,
round(ifnull(sum(if(borrow_date like '2023%' and region='华北',1,0))/sum(if(borrow_date like '2023%',1,0))*100,0),2) north_pct_2023,
round(ifnull(sum(if(borrow_date like '2023%' and region='华南',1,0))/sum(if(borrow_date like '2023%',1,0))*100,0),2) south_pct_2023,
round(ifnull(sum(if(borrow_date like '2023%' and region='华东',1,0))/sum(if(borrow_date like '2023%',1,0))*100,0),2) east_pct_2023
from Books b1 left join BorrowRecords b3 on b1.book_id = b3.book_id
left join Branches b2 on b2.branch_id = b3.branch_id
group by b1.book_id

全部评论

相关推荐

2025-12-22 16:31
已编辑
桂林电子科技大学 Python
很奥的前端仔:如果你接了offer 临时又说不去 hr确实要多做一些工作。 当然如果是接offer之前当我没说
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务