我有mysql查询,它似乎可以正常工作,但不从付款表中返回值。我在做什么错?
SELECT members.id, members.name, members.lastname
FROM members
JOIN (SELECT payments.id, payments.user_id, payments.begin_date,
MAX(payments.finish_date) AS finish_date, payments.price
FROM payments
GROUP BY payments.user_id)
AS payments
WHERE members.id=payments.user_id AND payments.finish_date>=CURDATE()
ORDER BY payments.finish_date ASC, payments.id ASC`
我使用:
echo stripslashes($wiersz['begin_date']);
返回行数据。
您可能要注意,您没有在主查询中选择begin_date字段:
SELECT members.id, members.name, members.lastname FROM ...
尝试使用
SELECT members.id, members.name, members.lastname, begin_date FROM ...
安德烈
finish_date是只是一个日期,还是还有小时,分钟和秒?您可以尝试设置日期格式
WHERE members.id=payments.user_id AND DATE(payments.finish_date) >= CURDATE()
ORDER BY DATE(payments.finish_date) ASC, payments.id ASC