京东校招薪资,研发岗涨薪超75%!

点击关注公众号,SQL干货及时获取

 
 
后台回复:1024,获取海量学习资源
往期热文
年薪200万的阿里P9,试用期转正失败。

gap了9个月,终于找到工作了。

长见识了,新型 0 成本裁员方式。

大家好,我是岳哥。

最近看到京东2025届校招启动了,开放1.8万个岗位,包含1.2万个2025年应届生和6000多个实习生岗位,同时薪资将全面上调,再次加薪,羡煞旁人!

fcb8b6dd5080366f02a0c800d4cede95.jpeg

特别是算法岗涨幅超75%,涨幅最高,东哥对人才还是舍得下本钱。

京东的校招开发岗在大厂里也不低,非常具有竞争力。

这是京东2024届技术岗的校招薪资水平:

  • 算法岗:月薪25.5k~30k,16个月薪资,年包:41w~48w。

  • 开发岗:月薪23k~27.5k,16个月薪资,年包:36w~44w。

  • 产品岗:月薪18k~23k,16个月薪资,年包:29w~39w。

咱们社招的同学跳槽能有20%就很不错了,假如都只按20%的涨幅,今年京东校招开发岗的薪资大概是:

  • 算法岗:月薪30.6k~36k,16个月薪资,年包:49w~58w。

  • 开发岗:月薪23k~27.5k,16个月薪资,年包:44w~53w。

  • 产品岗:月薪18k~23k,16个月薪资,年包:34w~44w。

现在秋招已经开始了,大概等到10月份大多数公司就会开奖了,到时候大家可以看下差距大不大。

以下是今天的SQL干货

有如下一张记录表T20191105,如何查询出每隔15分钟的记录数

4e00f8c4dd9640f6881ff85ba8908ab9.png

预期结果如下:

5f1f11472dee666a5e2ed45556b064c6.png

参考答案

create table T20191105
(
ID int,
Timesvarchar(50)
);
insert into T20191105 values(1,'2019-12-25 11:01');
insert into T20191105 values(2,'2019-12-25 11:03');
insert into T20191105 values(3,'2019-12-25 11:05');
insert into T20191105 values(4,'2019-12-25 11:09');
insert into T20191105 values(5,'2019-12-25 11:17');
insert into T20191105 values(6,'2019-12-25 11:19');
insert into T20191105 values(7,'2019-12-25 11:29');
insert into T20191105 values(8,'2019-12-25 11:37');

--SQL Server解法
select * from T20191105;
SELECT T.时间段 , T.行数
FROM (
SELECT DATEADD(mi,(DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,Times),120),DATEADD(ss,1,Times))/15)*15,CONVERT(VARCHAR(10),Times,120)) AS '时间段',
COUNT(*) AS '行数'
FROM T20191105
GROUP BY DATEADD(mi,(DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,Times),120),DATEADD(ss,1,Times))/15)*15,CONVERT(VARCHAR(10),Times,120))
) T

答案解析

这里主要是分组的这个函数改怎么理解。为了大家看的更加清楚明白,我们把这其中的每个函数都单独拆分开给大家看看

1、SELECT DATEADD(ss,1,times) FROM T20191105

2、SELECT CONVERT(VARCHAR(10),DATEADD(ss,1,times),120) FROM T20191105

3、SELECT (DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,times),120),DATEADD(ss,1,times))/15)*15 FROM T20191105

4、SELECT CONVERT(VARCHAR(10),times,120) FROM T20191105

5、SELECT DATEADD(mi,(DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,times),120),DATEADD(ss,1,times))/15)*15,CONVERT(VARCHAR(10),times,120)) FROM T20191105

结果如下:

f82ec02044e60352a7565d2192e2966f.png
  • 这里最重要的就是第3个函数转换DATEDIFF,它是首先将times的完整时间DATEADD(ss,1,times)减去times的日期部分。

  • CONVERT(VARCHAR(10),DATEADD(ss,1,times),最后就得到了时间部分,然后将时间按分钟进行换算,得出一个整数。

  • 我们知道在SQL中整数除以15最后还是整数,会自动直接舍弃小数部分。

  • 其实关键就是要舍弃这个小数部分,这样我们再乘以15就可以得到times最接近的15分钟是那一刻了。再将这个时刻对应的整数转换成时间类型,就是第5部我们得到内容了。

--MySQL解法
SELECT
FROM_UNIXTIME(t.unit_time* 900, '%Y-%m-%d %H:%i:%s') Times,
t.cnt
FROM
(
SELECT
FLOOR(UNIX_TIMESTAMP(Times) / 900) asunit_time,
count(ID) cnt
FROMT20191105
GROUP BYunit_time
) t;

答案解析

  • 这里是利用对时间格式化后进行分组求个数,其中子查询里面是解题的关键,先将带时间的日期通过UNIX_TIMESTAMP格式化成秒。

  • 然后除以900秒后用FLOOR向下取整得到一个整数,这样就可以得到一个按15分钟分组的时间序列,

  • 再通过FROM_UNIXTIME将unit_time转化成带时间的日期格式即可实现题目中的要求。

·················END·················
推荐一下我的小报童《SQL145题》,集合了145道日常工作中遇到的面试题和笔试题,所有题目均通过测试,目前买断价仅需10元,分享他人购买还可挣5元佣金,长按下方二维码即可订阅。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SQL数据库开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值