jiang_dr
jiang_dr
全部文章
题解
归档
标签
去牛客网
登录
/
注册
jiang_dr的博客
目前专注于SQL的练习
全部文章
/ 题解
(共76篇)
题解 | #查找最晚入职员工的所有信息#
来自专栏
补一下第一题 思路:主要考虑到可能不止一个员工是最晚入职的,所以order by limit 等不适用本题 select * from employees where hire_date = (select max(hire_date) from employees)
Mysql
Sqlite
2021-12-03
1
392
题解 | #网易云音乐推荐(网易校招笔试真题)#
来自专栏
思路: 连接三个表 求出关注的人喜欢的音乐的id 同时排除用户user_id = 1喜欢的音乐的id 最后对music_id进行去重及对music.id进行排序 完整代码: select distinct t3.music_name from follow t1, music_likes t2,...
Mysql
Sqlite
2021-11-30
1
485
题解 | #商品交易(网易校招笔试真题)#
来自专栏
思路: 先对trans表中,根据goods_id分组,使用having过滤出购买数量总和大于20的数据。 连接goods表与上面的临时表,即可查询出所需数据 select g.*, t.total from goods as g join (select goods_id, sum(count)...
Mysql
Sqlite
2021-11-30
1
430
题解 | #获得积分最多的人(三)#
来自专栏
与第二题类似,主要区别是需要额外判断sum(grade_num)中的grade_num是加还是减。 可以通过(case when ...) 或 if(...)条件分支判断求和 这里依旧给出两种方案来进行解答。 方案一: select u.id, u.name, sum(case when type=...
Mysql
Sqlite
2021-11-29
1
528
题解 | #获得积分最多的人(二)#
来自专栏
方法一: 与第一题类似,但是需要构建一个新的同样的查询语句,使用having过滤,在过滤条件中取出最高的积分 select u.id, u.name, sum(g.grade_num) as grade_sum from user u join grade_info g on u.id = g.us...
Mysql
Sqlite
2021-11-29
2
578
题解 | #获得积分最多的人(一)#
来自专栏
通用解法 思路:对user_id分组后取sum(grade_num),因为题目保证了最高的只有一位,那么就可以对sum(grade_num)进行逆序排序,然后使用limit 0, 1获取最高的积分数,最后联立两表即可。 完整代码: select t1.name, t2.grade_sum from ...
Mysql
Sqlite
2021-11-26
1
800
题解 | #最差是第几名(一)#
来自专栏
思路:最差排名 = 比自己成绩等级高的number总数 + 自己成绩等级number的个数 技巧:单表如果需要有排序,那么自连接一定可以解决 select t1.grade, sum(t2.number) as t_rank from class_grade as t1 join class_gra...
Mysql
Sqlite
2021-11-25
4
708
题解 | #实习广场投递简历分析(三)#
来自专栏
思路:本题主要考察函数的使用与两表连接,year函数可以取出date中的年份,month函数可以取出date中的月份。 但有一点需要注意,month不能取出经过data_formart函数格式化后的月份,如:month(date_format(date, '%Y-%m'))这种是不行的。 本题主要通...
Mysql
Sqlite
2021-11-24
1
822
题解 | #实习广场投递简历分析(一)#
来自专栏
思路:时间条件 + 岗位 + 数量 + 降序 时间条件为: date < '2026-01-01' 岗位为:job 数量为:sum(num) 的值 降序为:desc 完整代码: select job, sum(num) as cnt from resume_info where dat...
Mysql
Sqlite
2021-11-23
3
525
题解 | #牛客的课程订单分析(七)#
来自专栏
思路:在上一题中的使用case的题解中再增加一个分组和count即可。 case也可以被 ifnull(c.name, 'GroupBuy') 函数替换。 完整代码: select case when o.is_group_buy = 'Yes' then 'GroupBuy' when o....
Mysql
Sqlite
2021-11-22
1
454
首页
上一页
1
2
3
4
5
6
7
8
下一页
末页