首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL日期操作相关笔记

关于日期操作,相信不少人都跟阿桂一样,等到用到才去百度的吧!最近我也是这样,于是就索性整理一下之前的MySQL中有关日期操作函数,本文涉及大量函数,可能你一时半会就得记不过来的,就是记下来,过些天不用又可能会忘记,所以阿桂建议大家把文中的所有的SQL敲一遍,整理出自己的笔记,方便以后查阅;又或者收藏本文,需要时在拿出来查,本文没什么技术含量,但是很实用(认真的说)!

MySql日期操作

获取时间操作

时间转换操作

小结:

上述提到的几个函数中,输入参数如果是时间类型的,无论是date类型或者datetime类型哪怕是字符串类型(只要格式对就行),均可作为输入参数,例如:

日期计算类操作

有关时间的简单查询

注意下面的例子中字段 create_date 类型为 datetime,如果你的字段不是datetime,请自行加上时间转换操作的函数

综合练习

这是阿桂我之前做的一个看板模块的一个需求:展示过去的7天内,各个工站的当天的白夜班产量趋势变化

下面是表的结构(主要用到下面几个字段)

白班:当天早上 8 点到晚上 20 点

夜班:当天晚上 20点到第二天早上8点

简单介绍一下工站的作业流程:每一个工站配有一个扫描枪,扫描产品上的条码,每产出一个产品便被扫描进数据库(就是上述的表了)。

比如说9月6号的白班:2018-09-06 08:00:00 ——> 2018-09-06 20:00:00

9月6号的夜班:2018-09-06 20:00:00 —> 2018-09-06 23:59:59 —>2018-09-07 08:00:00

好了需求已经讲明白了!!!现在大家可以构思一下怎么查出过去7天内的各个工站的白夜班产量数据

公布答案了:

我们先分开查啊!下面是阿桂我的思路,如果你有更好的方法,告诉阿桂哦!由于表的字段比较长,所有阿桂我下面就用上表中的简写来表示

先查出过去7天内的各个工站的白班产量数据

再查出过去7天内的各个工站的夜班产量数据

先查出 20 点到 0 点的数据

再查出 0 点到 20 点的数据

然后在 join 起来

最后在join起来

好了!现在白班的数据有了,夜班的数据也有了,剩下的就join起来。

当初为了写出了这一条SQL,折腾了阿桂我一个多小时,各种百度、google。也零零散散记录了一些笔记。最近项目也有类似跟日期相关的查询,又是各种翻笔记。索性就把各部分笔记整理到一起了给大家

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180906G15VMD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券