0

我有这个查询:

SELECT DATE_FORMAT(DATE_SUB(`expiry_date`, INTERVAL 7 DAY), '%d %m %Y')
  FROM `my_subscriptions`
 WHERE `user_id` = '[user_id]';

返回expiry_date负 7 天;让我们称之为“返回日期”。

现在我想将这个“返回日期”与当前日期(现在的时间)进行比较,0如果当前日期小于或等于“返回日期”,则返回,1如果它更大。

我怎样才能做到这一点?

4

1 回答 1

1

您可以使用CASE也可以NOW()用于当前日期时间。试试这个

SELECT CASE WHEN NOW() <= DATE_FORMAT(DATE_SUB(`expiry_date`, INTERVAL 7 DAY), '%Y-%m-%d') THEN 0 ELSE 1 END AS is_expired FROM `my_subscriptions` WHERE `user_id` = '[user_id]';
于 2013-07-23T23:48:26.617 回答