数据库每日一题:2019-11-23

数据库每日一题:表employee包含2个字段:id(员工ID)、salary(员工薪水),通过SQL查询出employee表中第二高的薪水,具体如图所示:

image.png

解决思路:

  1. 格式化上班时间成日期作为新的字段
  2. 根据姓名和日期进行分组,同时计算每一分组的最大时间和最小时间作为下班时间和上班时间

参考答案(有更优SQL欢迎留言共同学习):

select t.name as '姓名', t.time1 as '日期', 
max(t.time) as '下班时间', min(t.time) as '上班时间'
from (
select t.name, date_format(t.time, '%Y-%m-%d') as time1, t.time
from 
tab as t
) as t
group by t.name, t.time1
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、SQL速成 结构查询语言(SQL)是用于查询关系数据库的标准语言,它包括若干关键字和一致的语法,便于数据库元件...
    shadow雨轩阅读 3,452评论 0 3
  • 1. 问题的提出## 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出...
    七寸知架构阅读 10,741评论 1 111
  • 1. 了解SQL 1.1 数据库基础 ​ 学习到目前这个阶段,我们就需要以某种方式与数据库打交道。在深入学习MyS...
    锋享前端阅读 4,919评论 0 1
  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 11,203评论 0 10
  • 1.简介 数据存储有哪些方式?电子表格,纸质文件,数据库。 那么究竟什么是关系型数据库? 目前对数据库的分类主要是...
    乔震阅读 5,867评论 0 2