如何在mysql中比较表中的日期?

时间:2016-09-03 07:04:49

标签: php mysql

我正在使用字段类型varchar作为日期:d-m-Y H:i:s 我的问题在这里:

$todaydate=date('d-m-Y')
select id from  table where id=$id and str_to_date(date, '%d-%m-%Y')='$todaydate'

我使用了这个查询,但我没有得到结果,请问有人帮我解决这个问题

2 个答案:

答案 0 :(得分:1)

请使用以下代码,您可以使用过滤日期从数据库中获取记录。

  

$todaydate=date('Y-m-d');
select id from  table where id=$id and DATE(date)='.$todaydate.'

答案 1 :(得分:0)

在你的情况下,一个mysql 'like'运算符可以做到这一点。 正如你在表中所说,你有一个日期列,保存的值就像这个03-09-2016 09:25:22。现在,您希望根据日期而不是时间来获取表中的所有值。

$todaydate=date('Y-m-d'); //this will give 03-09-2016
select id from table where id=$id and date like ('$todaydate%')

在您的查询中,您将获取所有以03-09-2016开头的值,并以您保存的任何值结束。