当前位置:   article > 正文

小米年后新一轮裁员?年终奖。。。

小米2024年年终奖什么时候发
  1. 点击关注公众号,SQL干货及时获取
  2. 后台回复:1024,获取海量学习资源
  3. SQL刷题专栏
  4. SQL145题系列

近日,有小米的员工爆料:小米2月29号又要大裁员了,3月5号发年终奖,在此之前大裁员,完全有坑员工年终奖之嫌。

以下是该员工原话:

确切消息,小米2024年2月29日又要裁员,赔偿标准是 n + 1,只通知,不协商。3月5号发年终奖,提前裁员又要坑员工一波年终奖。一个大企业,天天搞这种鸡鸣狗盗的事有点社会责任感吗?入职谈薪资时,说我们是14薪,强行把月薪压入年终。然后努力工作一年,绩效又要像奴才一样看人家脸色,入职3年,年终一次也没有拿全过。对自己的员工都行周扒皮之事,对客户能好到哪去?想买小米汽车的三思而行。

6f0095989f75aabde54d6f5d3117ab55.png

并且,评论底下已经有小米员工附和证实:2月底走人,被N+1了。

43b157a923bf0e9ce1d1e8aaab052ea9.png

评论区有一名员工罗列了这些年的不满之处:

b1770de7125ae1a5d088a242fa92a2d4.png 小米年底这波情况有点魔幻,一边是全公司上下紧锣密鼓为小米汽车上市宣传造势,而另一边,从雷军给武大捐款13亿开始,小米诸多员工就对东家就颇有微词。

如果这波裁员消息被最后实锤,那真让人无言以对。


以下是今天的SQL面试题

问题描述

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

135e67530c7a5e089ada21b04bd7b44a.png
T20240207

预期结果如下:

bf2a6caccdf4d9285b89c41d30b84488.png
结果

问题解析

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

  1. 1、SELECT DATEADD(ss,1,times) FROM T20240207
  2. 2、SELECT CONVERT(VARCHAR(10),DATEADD(ss,1,times),120) FROM T20240207
  3. 3、SELECT 
  4. (DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,times),120),DATEADD(ss,1,times))/
  5. 15)*15 FROM T20240207
  6. 4、SELECT CONVERT(VARCHAR(10),times,120) FROM T20240207
  7. 5、SELECT 
  8. DATEADD(mi,(DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,times),120),DATEADD(ss
  9. ,1,times))/15)*15,CONVERT(VARCHAR(10),times,120)) FROM T20240207

上面5个拆解的查询结果如下:a9a4465fc4d26de0bda09799562d7ffc.png

这里最重要的就是第3个函数转换DATEDIFF,它是首先将times的完整时间 DATEADD(ss,1,times)减去times的日期部分CONVERT(VARCHAR(10),DATEADD(ss,1,times), 最后就得到了时间部分,然后将时间按分钟进行换算,得出一个整数。

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

参考答案

  1. create table T20240207
  2. (
  3. ID int,
  4. Times varchar(50)
  5. );
  6. insert into T20240207 values (1,'2019-12-25 11:01');
  7. insert into T20240207 values (2,'2019-12-25 11:03');
  8. insert into T20240207 values (3,'2019-12-25 11:05');
  9. insert into T20240207 values (4,'2019-12-25 11:09');
  10. insert into T20240207 values (5,'2019-12-25 11:17');
  11. insert into T20240207 values (6,'2019-12-25 11:19');
  12. insert into T20240207 values (7,'2019-12-25 11:29');
  13. insert into T20240207 values (8,'2019-12-25 11:37');
  14. SELECT T.时间段 , T.行数
  15. FROM (
  16. SELECT
  17. DATEADD(mi,(DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,Times),120),DATEADD(ss
  18. ,1,Times))/15)*15,CONVERT(VARCHAR(10),Times,120)) AS '时间段',
  19.  COUNT(*) AS '行数'
  20. FROM T20240207
  21. GROUP BY
  22. DATEADD(mi,(DATEDIFF(mi,CONVERT(VARCHAR(10),DATEADD(ss,1,Times),120),DATEADD(ss
  23. ,1,Times))/15)*15,CONVERT(VARCHAR(10),Times,120))
  24. ) T

以上试题节选自《SQL145题》

 
 
  1. 最后给大家分享我写的SQL两件套:《SQL基础知识第二版》和《SQL高级知识第二版》的PDF电子版。里面有各个语法的解释、大量的实例讲解和批注等等,非常通俗易懂,方便大家跟着一起来实操。
  2. 有需要的读者可以下载学习,在下面的公众号「数据前线」(非本号)后台回复关键字:SQL,就行
  3. 数据前线

后台回复关键字:1024,获取一份精心整理的技术干货

后台回复关键字:进群,带你进入高手如云的交流群。

 
 
 
 
 
 
推荐阅读

  1. 文章有帮助的话,点个赞或在看吧。
  2. 谢谢支持
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/763184
推荐阅读
相关标签
  

闽ICP备14008679号