PHP mysql:如何为今天或特定日期选择记录?

时间:2011-04-18 05:44:49

标签: php mysql

我正在使用一个表,我无法更改结构....现在有一个包含时间戳的varchar列。现在我需要选择时间戳转换为当前日期或指定日期的记录。

有任何帮助吗?

3 个答案:

答案 0 :(得分:0)

根据您将日期存储为字符串的格式,使用STR_TO_DATE函数解析日期。然后,您可以将其用作where子句的一部分来查询所需数据。

答案 1 :(得分:0)

试试这个

select * from table  where date(your_field)=CURDATE()

或特定日期

select * from table where date(your_field)=DATE_FORMAT(2011-05-31 00:02:00, '%Y-%m-%d')

答案 2 :(得分:0)

首先,您不应将日期信息存储在具有VARCHAR字段的mysql数据库中。而是使用它所用的DATETIME。我只能猜测你是如何在数据库中存储时间戳日期的,但我将假设它是以下格式:

YYYY-mm-dd hh:mi:ss (ie '2011-04-15 09:23:55')

您现在必须格式化您的输入,我假设它是一个时间对象,或者它是一个与数据库中的数据格式相同的字符串:

$yourdate = strftime("%Y-%m-%d", $input);

然后构建您的查询

query = "select * from table where substring(datecol, 1, 10) = '$yourdate'";

执行此操作,你应该很好