更新时间:2023-11-27 20:16:58
您应该比较带日期的日期而不是带日期时间的日期
you should compare date with date not date with datetime
AND DATE(start_date) <= '2017-08-28'
AND DATE(end_date) >= '2017-08-28'
如此
SELECT id AS couponID, percentage_off, usage_count, used_count
FROM coupons
WHERE `code` = 'DANGER'
AND active_status = '1'
AND deleted = '0'
AND DATE(start_date) <= '2017-08-28'
AND DATE(end_date) >= '2017-08-28'
AND category LIKE '%cLevel%'
如果您在php中使用var,则应使用str_to_date正确转换,例如:
in you case you are using var in php and you should convert properly using str_to_date eg:
str_to_date( '$now'),'%Y-%m-%d');
SELECT id AS couponID, percentage_off, usage_count, used_count
FROM coupons
WHERE `code` = 'DANGER'
AND active_status = '1'
AND deleted = '0'
AND DATE(start_date) <= str_to_date( '$now'),'%Y-%m-%d')
AND DATE(end_date) >= str_to_date( '$now'),'%Y-%m-%d')
AND category LIKE '%cLevel%'
或OP所使用
str_to_date( '$now'),'%Y-%m-%d %H:%i:%s');
SELECT id AS couponID, percentage_off, usage_count, used_count
FROM coupons
WHERE `code` = 'DANGER'
AND active_status = '1'
AND deleted = '0'
AND start_date <= DATE_FORMAT('$now','%Y-%m-%d %H:%i:%s')
AND end_date >= DATE_FORMAT('$now','%Y-%m-%d %H:%i:%s')
AND category LIKE '%cLevel%'