比巴卜和哪步卜
比巴卜和哪步卜
全部文章
分类
归档
标签
去牛客网
登录
/
注册
比巴卜和哪步卜的博客
全部文章
(共26篇)
题解 | 考试分数(四)
# 先按照语言进行排序 # 对于每种语言,总序号数是偶数的,start为总数/2,end为总数/2+1,;总数序号为奇数的,start为ceil(总数/2),end也是 select a.job as job, round(case when mod(count(*...
2026-01-06
0
21
题解 | 考试分数(三)
# 先连接表,把语言和名字对应起来; # 根据不同语言的学生进行排序 # 取出前两名并排序 select a.id as id, a.name as name, a.score as score from (select g.id as id, ...
2026-01-06
0
19
题解 | 牛客每个人最近的登录日期(六)
# 先链接表,看看各个用户的名字,登录日期以及各个日期的刷题情况: # 把没刷题的抹掉,使用窗口函数 select a.name as u_n, a.date as date, sum(a.number) over(partition by a.name order by a.date rows b...
2026-01-06
0
29
题解 | 牛客每个人最近的登录日期(四)
# 新用户:没有上一条记录的用户。 # 第一步:针对每个用户,都有它自己是新用户的那一天,先找出那一天,也即他没有上一条记录的日子。 # 第二步:针对这些日子,找出它们分别有多少新用户。注意,这里只能找出非0的。 # 第三步:为了把那些没有出现新用户的日子也体现出来,需要拿原始数据进行左连接,...
2026-01-05
0
22
题解 | 牛客每个人最近的登录日期(三)
# 留存率 = 连续两天都登录的用户/总用户 # 连续两天都登录,需要使用窗口函数: select round(count(distinct a.user_id)/(select count(distinct user_id) from login),3) as p from (select ...
2026-01-05
0
22
题解 | 找到每个人的任务
select p.id as id, p.name as name, t.content as content from person as p left outer join task as t on p.id = t.person_id orde...
2026-01-05
0
15
题解 | 给出employees表中排名为奇数行的first_name
# 子查询:按照first_name进行升序排序并标明序号 # 总查询,把奇数序号的取出来 select a.first_name as first from (select *, rank() over(order by first_name) as ranks from...
2026-01-05
0
20
题解 | 获取有奖金的员工相关信息。
# 连接表,筛选出有奖金的人。 # 计算奖金并单加一列 select e.emp_no as emp_no, e.first_name as first_name, e.last_name as last_name, eb.btype as btype, ...
2026-01-05
0
18
题解 | 平均工资
# 找出在职员工的工资最大,最小值对应的员工 # 找出不是这种工资的员工,求平均 select avg(salary) from salaries where to_date = '9999-01-01' and salary != (select max(sal...
2026-01-05
0
17
题解 | 按照dept_no进行汇总
# 先找出各个部门的emp_no; # 再进行连接 select dept_no, group_concat(emp_no separator ',') as employees from dept_emp group by dept_no 解题关键在于:这里不是...
2026-01-05
0
17
首页
上一页
1
2
3
下一页
末页