获取查询中数据库存储号码的前5位数字

时间:2011-09-18 14:05:59

标签: php mysql

我正在使用表格,我的表格中有一个字段,用于存储原始time()函数值作为日期。

我希望从此表中获取今天日期的行。

所以我发现当time() func返回一个10位数字,如1316352184时,前5位数字是年,月,日我需要获得今天的日期,其余的是小时分钟第二个我不需要

所以我今天没有时间和......就像

$t = time();
$t = $t /100000;
$today =(int)$t;

现在我需要从表中获取今天日期的行,但我不知道该怎么做。

如何在查询中获取数据库中存储日期的前5位数字,以便将其与$ date进行比较?

这样的事情:

$sql = "SELECT * FROM TABLE WHERE ((int)date/100000) as date = $today ; 

4 个答案:

答案 0 :(得分:2)

select * from table
where from_unixtime(unix_timestamp_field,'%Y-%m-%d') = curdate()

答案 1 :(得分:0)

为什么不使用:

$sql = "SELECT * FROM TABLE WHERE date(date) = date(NOW());

答案 2 :(得分:0)

您拥有的是UNIX时间戳。自1970年1月1日以来的秒数。

你可以使用date()和mktime()来计算今天的时间戳,然后做日期>时间戳。如果那是有道理的。

答案 3 :(得分:0)

听起来您应该使用列的DATETIMETIMESTAMP数据类型,以便使用MySQL的日期函数。