匹配今天时间戳行我有表在MySQL中有三个的Fileds取,在PHP的MySQL
id
name
time_stamp
这里time_stamp
商店PHP的time()
值。
我想获得匹配今天时间戳的字段,现在我正在取回所有行并检查循环中的时间戳条件,如果匹配将打印当前行。
有没有办法在mysql查询本身做到这一点?
匹配今天时间戳行我有表在MySQL中有三个的Fileds取,在PHP的MySQL
id
name
time_stamp
这里time_stamp
商店PHP的time()
值。
我想获得匹配今天时间戳的字段,现在我正在取回所有行并检查循环中的时间戳条件,如果匹配将打印当前行。
有没有办法在mysql查询本身做到这一点?
()或的currentdate()函数,因为您将UNIX时间戳(time()
),你并不需要获取所有行,并在取的比较。就在MySQL的使用FROM_UNIXTIME()
:
SELECT * FROM table_name WHERE FROM_UNIXTIME(`time_stamp`, '%Y-%m-%d') = CURDATE()
是的,它的工作 –
现在可以使用该
你可以做之间在一个数据库,从今天得到记录,例如,也可以转换日期,你需要的特定格式。
人类可读的,你可以使用
如果是DATE_FORMAT之间的情况下使用,并选择你只需要什么。
我希望能帮到您
您正在存储UNIX_TIMESTAMP
。
所以,有一个办法:
SELECT * FROM table_name WHERE FROM_UNIXTIME(
TIME_STAMP , '%Y-%m-%d') = CURDATE()
@Ghost已经张贴了这个在他的回答
但是,这种方法的一个潜在的问题是,你不能使用索引(如果有的话)在time_stamp
列。
这里是周围的其他方法:
SELECT * FROM
table_name
WHERE time_stamp BETWEEN UNIX_TIMESTAMP(CURDATE()) AND (UNIX_TIMESTAMP(CURDATE() + INTERVAL 1 DAY) - 1)
有什么代码,你试过依然。发布这些信息,以便我们确保您的进展。 –
请检查这个http://stackoverflow.com/questions/14769026/mysql-select-where-timestamp-today – Sasikumar
你应该去'SELECT * FROM'表'WHERE DATE('time_stamp')= NOW()' – Akshay