如何搜索 MySQL 中包含 unix 时间戳的列?
How can I search a column in MySQL containing unix timestamps?
我有一个名为 user_log
的 mysql table,其中包含如下内容:
userid created_at
1 1388514600
2 1391193000
我想获取使用确切日期的记录。例如我有 created_at
即 2013-12-31
SELECT * FROM user_log WHERE created_at = UNIX_TIMESTAMP('2013-31-12');
但是没有选择记录,我不知道那个查询有什么问题。那么如何使用日期从 mysql 中的 unix 时间戳列获取记录?
要知道日期格式的确切值,您可以这样做:
SELECT FROM_UNIXTIME(created_at) FROM user_log;
也就是说,值 1388514600
不仅仅是 2013-12-31
,它实际上是 2013-12-31 18:30:00
;
所以要按日期搜索,您可以试试这个:
SELECT FROM_UNIXTIME(created_at) AS dt
FROM user_log
HAVING date(dt)='2013-12-31';
我有一个名为 user_log
的 mysql table,其中包含如下内容:
userid created_at
1 1388514600
2 1391193000
我想获取使用确切日期的记录。例如我有 created_at
即 2013-12-31
SELECT * FROM user_log WHERE created_at = UNIX_TIMESTAMP('2013-31-12');
但是没有选择记录,我不知道那个查询有什么问题。那么如何使用日期从 mysql 中的 unix 时间戳列获取记录?
要知道日期格式的确切值,您可以这样做:
SELECT FROM_UNIXTIME(created_at) FROM user_log;
也就是说,值 1388514600
不仅仅是 2013-12-31
,它实际上是 2013-12-31 18:30:00
;
所以要按日期搜索,您可以试试这个:
SELECT FROM_UNIXTIME(created_at) AS dt
FROM user_log
HAVING date(dt)='2013-12-31';