2014-09-24 33 views
0

我有一列(cradit_end_date)指出产品已过期或未过期。 该列有两种状态:如果时间戳已经过期,请将其与当前时间戳进行比较

0000-00-00 00:00:0 < =这意味着此产品没有到期日期。

日期(例如:2014-10-24 10:00:00) < =这表示此产品有过期日期(这里差不多一个月后)。

现在,我如何获得既没有到期日期又没有过期的产品?

使用PHP或SQL可以吗?

(我正在使用mysql)。

$result_coupons = mysql_query("select id,title,pic,price,off,fake_sell,cradit_end_date from coupons where 
confirm=2 and status=1 and 
shop_id=$row->id ORDER BY id DESC limit 1"); 
+0

如果您打算比较日期/时间,请考虑使用时间戳而不是格式化的字符串。 – 0x47686F7374 2014-09-24 08:15:05

+0

我正在使用时间戳。 – 2014-09-24 08:16:49

+0

那么你是如何得到** 0000-00-00 00:00:0 **? – 0x47686F7374 2014-09-24 08:20:50

回答

1

您可以使用OR运算符检查单列中的多个状态。

... 
WHERE (cradit_end_date = '0000-00-00 00:00:00' OR cradit_end_date > NOW()) 
... 
+0

我认为OR cradit_end_date> NOW()而不是OR cradit_end_date 2014-09-24 09:17:51

+0

@ S.M_Emamian,你是对的,我是错的。 – llanato 2014-09-24 10:02:36