从Mysql中的最后一天,一周,一个月和一年中获取数据

时间:2013-07-03 16:14:51

标签: mysql date

我读了许多主题来获取在不同时期发布的数据,但由于我的mysql表中的时间是STRING格式,我无法实现。

SELECT s.user_id, count(*) AS wins, u.username, u.avatar,u.avatar_uploaded
            FROM on_scores AS s
            LEFT JOIN on_users AS u ON (u.userid = s.user_id)
            WHERE s.is_high = '1' AND  DATE(s.date_score)  >= DATE_SUB(CURDATE(), INTERVAL 7 DAY)
                        GROUP BY s.user_id
            ORDER BY wins DESC
            LIMIT 10

我尝试了STR_TO_DATE方法,但仍然没有输出。

1 个答案:

答案 0 :(得分:0)

使用from_unixtime功能将时间转换为类似日期的格式。

更多信息here

有关格式化结果日期的信息 - here

示例:

select date_sub( from_unixtime( s.datescore ), INTERVAL 1 MONTH ) as monthfromdatevalue;
select datediff( from_unixtime( s.datescore, curdate()) as howlongago_fromtoday;