mysql中获取当周的数据的sql语句写法

2018-05-05     浏览次数:170

当周的相关数据写法:

1、获取今天是一周第几天或星期几:SELECT WEEKDAY(now());返回的是数字:0为周一,6为周日
2、获取本周的第一天日期:SELECT DATE_SUB(now(),INTERVAL WEEKDAY(now()) day);或SELECT DATE_ADD(now(),INTERVAL -WEEKDAY(now()) day);或 SELECT CURDATE( ) – WEEKDAY( CURDATE( ) );
3、再写一个上周的第一天至现在的数据:(以表t为数据表)
SELECT * FROM `t` WHERE addTime >= date_format(date_sub(date_sub(now(), INTERVAL WEEKDAY(NOW()) DAY), INTERVAL 1 WEEK), ‘%Y-%m-%d');是不是有些感觉了!

注:若你是以时间戳保存的时间字段,那么请用from_unixtime()函数转换为时间格式,如:from_unixtime($timestamp)

参考如下:

SELECT * FROM yh_content where inputtime>DATE_SUB(CURDATE(), INTERVAL 1 WEEK)

注意:如果数据库中时间以UNIX时间戳的形式存放的话,在时间对比上需要更改为统一格式:

DATE_SUB()返回的是格式化后的时间:2018-05-05

需要用UNIX_TIMESTAMP()转化为UNIX时间戳形式对比:

SELECT * FROM yh_content where where inputtime>UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 WEEK))
*转载请注明出处,更多资料尽在 吾爱编程
返回吾爱编程首页