Mysql SQL从时间戳获取日期

Mysql SQL从时间戳获取日期,mysql,sql,Mysql,Sql,我有一个数据库,其中所有数据都有一个unix时间戳作为整数,整数是自1970年1月1日以来的秒数(比如Time.now.to_I以ruby返回) 有没有办法用SQL从1447277423获取日期?我需要按日期对行进行分组 我希望这是在一个视图中完成的,而不是使用另一个脚本来完成 这可能吗?这是unix时间戳的一部分,您可以将其视为一个整数 SELECT something FROM table WHERE date >= 1447277423 希望这有帮助只需使用FROM_UNIXTIM

我有一个数据库,其中所有数据都有一个unix时间戳作为整数,整数是自1970年1月1日以来的秒数(比如Time.now.to_I以ruby返回)

有没有办法用SQL从1447277423获取日期?我需要按日期对行进行分组

我希望这是在一个视图中完成的,而不是使用另一个脚本来完成


这可能吗?

这是unix时间戳的一部分,您可以将其视为一个整数

SELECT something FROM table WHERE date >= 1447277423
希望这有帮助

只需使用FROM_UNIXTIME():


将unix时间戳转换为仅日期(因为您不需要小时/秒),然后按它分组

SELECT * FROM table
GROUP BY FROM_UNIXTIME(date_timestamp, '%Y %m %d');
或者,如果您不想实际对它们进行分组,只想让它们按顺序输出,请改为按顺序输出

SELECT * FROM table
ORDER BY date_timestamp
/* when ordering, it doesn't matter so much if its the whole timestamp or not since the date comes first in the timestamp */
进一步来说,您还可以选择格式化日期

SELECT *, FROM_UNIXTIME(date_timestamp, '%Y %m %d') as date_Ymd FROM table
ORDER BY date_timestamp;

OP需要按日期分组。这还不够。
SELECT *, FROM_UNIXTIME(date_timestamp, '%Y %m %d') as date_Ymd FROM table
ORDER BY date_timestamp;