跳到内容
当前位置:首页>央企考试真题>SQL语句学习强关注点-牛客网大厂笔试真题练习(五)

SQL语句学习强关注点-牛客网大厂笔试真题练习(五)

  • 2026-11-14 00:30:39
SQL语句学习强关注点-牛客网大厂笔试真题练习(五)

2026

04/09

地点:世界梦想

期

待

改

变

Here's to the changes we'll make, one practice at a time.

采取刷题-总结-输出的形式学会SQL

接下来这段时间我会直接去做真题,并且总结知识点、输出

1

题号:SQL43

题目:获取指定客户每月的消费额

< 难度  |  中  等 >

具体要求:需要查询 Tom 这个客户在 2023 年每月的消费金额(按月份正序显示),结果保留1位小数。

数据表

看客户的消费情况,肯定两个表要关联起来:交易表的t_cus与客户表的c_id是对应的。

解析:①表连接:

  • ON t.t_cus = c.c_id:通过客户ID进行连接。

②过滤数据:客户是tom,时间是2023年,交易类型需要为1表示消费

③按月汇总:这个时间需要处理成“2023-01”这样的结构:

  • DATE_FORMAT(t.t_time, '%Y-%m') AS time

  • 记得吗,过往学过Y表示4位年份,m表示两位月份

  • 如果是%y小写的话,表示2位年份,如2026->26

  • %c    calendar month    月份(不带前导零)

处理好时间,对每月消费金融求和sum,每月分组用group by

④排序 升序asc就结束了

SELECT    DATE_FORMAT(t.t_time, '%Y-%m') AS time,    ROUND(SUM(t.t_amount),1) AS totalFROM    trade tJOIN    customer c ON t.t_cus = c.c_idWHERE    t.t_type =1    AND c.c_name ='TOM'    AND YEAR(t.t_time) =2023GROUP BY    timeORDER BY    time

2

题号:SQL44

题目:查询连续入住多晚的客户信息?

< 难度  | 中 等 >

具体要求:请查询该酒店从6月12日开始连续入住多晚的客户信息?

要求输出:客户id、房间号、房间类型、连续入住天数(按照连续入住天数的升序排序,再按照房间号的升序排序,再按照客户id的降序排序)

数据表

客户信息和入住信息是分开的,两个表通过room_id关联。

解析:请查询该酒店从6月12日开始连续入住多晚的客户信息?

①连接表:

  • ON gt.room_id = ct.room_id:通过房间号进行连接。

②计算入住天数:使用datediff:

  • DATEDIFF(ct.checkout_time, ct.checkin_time):前后两个时间做差来计算入住天数。

    过往学过一个时间差函数是timestampdiff,这个是具体时间单位。而datediff是粗略的时间天数差,就是整数。

③过滤数据:

  • DATE(ct.checkin_time) = '2022-06-12':选择在2022年6月12日入住的记录。

  • DATEDIFF(ct.checkout_time, ct.checkin_time) >= 2:选择连续入住至少两晚的记录

SELECT    ct.user_id,    ct.room_id,    gt.room_type,    DATEDIFF(ct.checkout_time, ct.checkin_time) AS daysFROM    checkin_tb ctJOIN    guestroom_tb gt ON gt.room_id = ct.room_idWHERE   DATE(ct.checkin_time) ='2022-06-12'AND DATEDIFF(ct.checkout_time, ct.checkin_time) >=2ORDER BY    days ASC, ct.room_id ASC, ct.user_id DESC

求点赞

求分享

求喜欢

2026-04-09

  1. 练习路径:“牛客网-SQL篇-SQL大厂笔试真题”;

  2. date_format和datediff,今天这两题都是中等难度的,有没有发现开始跟时间关联上了,所以时间很重要哦。

Learning

微信咨询 微信客服二维码微信扫一扫 · 添加人工客服 QQ QQ咨询 QQ咨询二维码QQ扫一扫 · 添加人工客服 帮助手册