我们经常会面临要从数据库里判断时间,取出特定日期的查询。但是数据库里储存的都是unix时间戳,处理起来并不是特别友好。幸而MYSQL提供了几个处理时间戳的函数,可以帮助我们在查询的时候,就将时间戳格式化。用法举例如下:

1.FROM_UNIXTIME()函数

FROM_UNIXTIME(unix_timestamp,format)

参数unix_timestamp  时间戳 可以用数据库里的存储时间数据的字段

参数format  要转化的格式  比如“”%Y-%m-%d“”  这样格式化之后的时间就是 2017-11-30

可以有的形式:

%M 月名字(January~December) 
%W 星期名字(Sunday~Saturday) 
%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。) 
%Y 年, 数字, 4 位 
%y 年, 数字, 2 位 
%a 缩写的星期名字(Sun~Sat) 
%d 月份中的天数, 数字(00~31) 
%e 月份中的天数, 数字(0~31) 
%m 月, 数字(01~12) 
%c 月, 数字(1~12) 
%b 缩写的月份名字(Jan~Dec) 
%j 一年中的天数(001~366) 
%H 小时(00~23) 
%k 小时(0~23) 
%h 小时(01~12) 
%I 小时(01~12) 
%l 小时(1~12) 
%i 分钟, 数字(00~59) 
%r 时间,12 小时(hh:mm:ss [AP]M) 
%T 时间,24 小时(hh:mm:ss) 
%S 秒(00~59) 
%s 秒(00~59) 
%p AM或PM 
%w 一个星期中的天数(0=Sunday ~6=Saturday ) 
%U 星期(0~52), 这里星期天是星期的第一天 
%u 星期(0~52), 这里星期一是星期的第一天 
%% 一个文字%

使用举例:

SELECT
username,
FROM_UNIXTIME(create_time, "%Y-%m-%d") AS dat
FROM
`wp_user`

GROUP BY

dat

这样就能查出每天有哪些用户注册了。按天分组,你可以将数据导出后进行其他操作。

2.UNIX_TIMESTAMP()

UNIX_TIMESTAMP(date)

其中date可以是一个DATE字符串,一个DATETIME字符串,一个TIMESTAMP或者一个当地时间的YYMMDD或YYYMMDD格式的数字

用这个函数可以帮助我们在时间戳中筛选出某些天的数据。

比如说:

SELECT
username,
FROM_UNIXTIME(create_time, "%Y-%m-%d") AS dat
FROM
`wp_user`

WHERE

create_time >=UNIX_TIMESTAMP(''2017-11-29')

AND

create_time <UNIX_TIMESTAMP(''2017-11-30')

GROUP BY

dat

这个查询可以让我们查出29号那一天的用户注册记录。

善用这两个MYSQL函数可以帮助我们提高处理数据的效率。

善用mysql中的FROM_UNIXTIME()函数和UNIX_TIMESTAMP()函数的更多相关文章

  1. MySQL中 IFNULL、NULLIF和ISNULL函数的用法

    mysql 中 ifnull().nullif().isnull()函数的用法讲解: 一.IFNULL(expr1,expr2)用法: 假如expr1不为NULL,则 IFNULL() 的返回值为ex ...

  2. mysql中length与char_length字符长度函数使用方法

    在mysql中length是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符了,与char_length是有一点区别,本文章重点介绍第一个函数. mysql里面的length函数是一个用来 ...

  3. MySQL中concat()、concat_ws()、group_concat()函数的使用技巧与心得总结

    Author:极客小俊 一个专注于web技术的80后 我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人! CSDN@极客小俊,原创文章, B站技术分享 B站视频 : Bilibili.c ...

  4. mysql中的FROM_UNIXTIME()函数和UNIX_TIMESTAMP()函数

    unix_timestamp 是时间戳,可以用数据库里的存储时间数据的字段 from_unixtime 是将时间戳格式化为你想要时间

  5. mysql中比较实用的几个函数

    1.曾有这样的需求: 可以使用如下函数: 语法:FIND_IN_SET(str,strlist). 定义: 1. 假如字符串str在由N子链组成的字符串列表strlist中,则返回值的范围在1到N之间 ...

  6. Mysql 中和同to_char 一样用法的函数

    STR_TO_DATE() $sql = " SELECT "; $sql .= " m_img,m_content,STR_TO_DATE(m_time,\" ...

  7. MYSQL中关于日期处理的函数

    < DOCTYPE HTML PUBLIC -WCDTD HTML TransitionalEN> MySQL数据库中SQL语句中 关于日期.时间\时间戳的函数   一 MySQL 获得当 ...

  8. mysql 中时间和日期函数应用

    一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +-------------------- ...

  9. mysql中的内置函数

    这里主要介绍mysql丰富的内置函数. 数学函数 数学函数相对比较简单,就是涉及一些数值的计算,这里列出数学函数的功能,仅个别给出实例. 函数 作 用 ABX(x) 返回x的绝对值 CEIL(X),C ...

随机推荐

  1. java系统化基础-day01-基础语法知识

    1.学前必看 该课程将系统化的讲解java基础,但是该课程并不适合零基础的学员,因为在整个java学习体系中我们是按照实际生产设计, 主体思路是以完成某个业务为主线,用到什么技术就学什么技术,即带着问 ...

  2. MySQL Case--优化OR语句踩坑记录

    问题描述 研发同事反馈某应用执行较慢,对应SQL为: UPDATE bs_serial_trac , LOCK_VALUE = '', UPDATE_USER = 'transSys' ' AND ( ...

  3. Linux忘记root密码,进入单用户模式,切换运行级别,切换用户

    切换用户指令 su - 用户名 当高权限用户切换到低权限用户的时候不需要密码 反之低权限切换到高权限用户需要高权限用户的密码 用exit可以退出当前用户,回到上一个用户 而且它的退出是一层一层退出的: ...

  4. dijkstra,belllman-ford,spfa最短路算法

    参考博客 时间复杂度对比: Dijkstra:  O(n2) Dijkstra + 优先队列(堆优化):  O(E+V∗logV) SPFA:  O(k∗E) ,k为每个节点进入队列的次数,一般小于等 ...

  5. TAPD---“文档”的用途

    主要用途:文件的存放 (1)对于测试组:存放测试用例.主要针对当前的迭代,可新建对应的文件夹,上传存放相应的xmind.excel文件.方便开发查找用例文件 (2)对于项目:存放共用的文档等 这里只是 ...

  6. php+tcpdf如何把生成的pdf文件保存在服务端

    tcpdf组件目前应用得非常广泛,但是对于如何把生成的pdf文件自动保存在服务端却很少有人提及.让我们先来看看标准输出代码:   //服务器存档模式 $pdf->Output('output.p ...

  7. MySQL server has gone away && Lost connection to MySQL server during query

    问题一.MySQL server has gone away ##### peewee from peewee import * from peewee import __exception_wrap ...

  8. [学习笔记] Miller-Rabin 质数测试

    Miller-Rabin 事先声明,因为菜鸡Hastin知识水平有限就是菜,因此语言可能不是特别规范,仅供理解. step 0 问一个数\(p\)是否为质数,\(p<=10^{18}\). 一个 ...

  9. 封装原生promise函数

    阿里面试题: 手动封装promise函数 <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  10. 微信小程序开发工具“当前系统代理不是安全代理”

    (1)删除注册表中以proxy开头的项目再次重启 regedit进入[HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Inter ...