记录mysql知识和操作--时间操作篇

一、根据时间查询数据

1.1. 常用时间函数

  1. to_days函数:给定一个日期date, 返回一个天数 (从年份0开始的天数 )。
select * from table where to_days(column_time) = to_days(now());
select * from table where date(column_time) = curdate(); 
select * from table where date(column_time) = DATE(NOW());
  1. now()、current_timestamp():获取当前年月日时分秒
  2. curdate() 、current_date(): 获取当前年月日
  3. curtime()、current_time():获取当前时分秒
  4. dayofweek():一个星期的第几天(返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)
select DAYOFWEEK(CURDATE())
或者
select DAYOFWEEK(NOW())
  1. weekday():返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。
select weekDay(CURDATE())
或者
select weekDay(NOW())
  1. dayofmonth():返回date的月份中日期,在1到31范围内
select DAYOFMONTH(CURDATE())
或者
select DAYOFMONTH(NOW())
  1. dayofyear():返回date在一年中的日数, 在1到366范围内。
select DAYOFYEAR(NOW())
  1. MONTH():返回date的月份,范围1到12
select MONTH(CURDATE())
  1. QUARTER():返回date一年中的季度,范围1到4
select QUARTER(CURDATE())

引用

  1. DATE():返回日期的年月日,类似于日期的格式化,比如DATE(NOW())和
    DATE_FORMAT(NOW(),’%Y-%m-%d’)类似结果

  2. DATEDIFF(date1,date2):函数返回两个日期之间的天数。
    date1=date2时值为0,date1>date2时值为1,date1<date2值为-1

  3. DATE_ADD() :函数向日期添加指定的时间间隔。
    明天这个时候的日期:

SELECT DATE_ADD(NOW(),INTERVAL 1 day)
  1. DATE_SUB() :函数从日期减去指定的时间间隔。与DATE_ADD()相反,一个加一个减
  2. DATE_FORMAT() :函数用于以不同的格式显示日期/时间数据

格式化日期年月日时分秒,用途:数据库数据是datetime类型返回到页面,一般都要格式化一下

SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %T')

1.2、常用的时间查询

  1. 查询当天数据
select * from table where to_days(column_time) = to_days(now());
select * from table where date(column_time) = curdate(); 
  1. 查询一周数据
select * from table  where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);
  1. 查询一个月
select * from table  where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值