以下是我的sql查询,其中我试图按日期(大于)差异过滤结果。 SQL函数“Date(FROM_UNIXTIME(i_last_updated))”成功返回日期,但以下查询不按照where子句检查过滤结果。请告诉我,我的SQL查询有问题,我该如何纠正。谢谢
注意:“我通过使用简单的if / else成功完成了它,但我想知道是否有任何可能的方法来使用sql查询”
$d= "2012-12-25"
$sql2 = "SELECT attendees FROM event_attendees where Date(FROM_UNIXTIME(i_last_updated)) > $d";
答案 0 :(得分:1)
您错过了日期变量周围的'
:
$sql2 = "SELECT attendees FROM event_attendees where Date(FROM_UNIXTIME(i_last_updated)) > '$d'";
答案 1 :(得分:0)
查找MySQL datediff
函数,该函数可让您将FROM_UNIXTIME()
的结果与$d
进行比较。测试结果的符号。
答案 2 :(得分:0)
您可以使用MySQL的DATEDIFF函数来查找两个日期之间的差异。
OR
但是,对我而言,似乎不是为每行转换i_last_updated
,而是将$d
转换为unix时间戳更好。你可以使用MySQL的UNIX_TIMESTAMP函数来做到这一点。