sql获取时间

2018-10-24  本文已影响0人  chliar
1、几个小时内的数据:
    DATE_SUB(NOW(), INTERVAL 5 HOUR

2、今天
    select * from 表名 where to_days(时间字段名) = to_days(now());

3、昨天:
    select * from 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1;

4、7天:
    select * from 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名);

5、近30天
    select * from 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名);

6、本月
    select * from 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' );

7、上一月(=1 now()的时间和时间字段名的时间相差1一个%m,  也可以使用'>' '<' )
    select * from 表名 WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( 时间字段名, '%Y%m' ) ) =1;

8、获取当前时间的周一和周日 的日期
select subdate(curdate(),date_format(curdate(),'%w')-1);
select subdate(curdate(),date_format(curdate(),'%w')-7);

上一篇 下一篇

猜你喜欢

热点阅读