未经测试,但:
SELECT cplx.*, amtPaid
FROM apt_complex cplx
LEFT JOIN (
SELECT sum(amount) as amtPaid,
year(payment_date) as payYear,
month(payment_date) as payMonth,
complex_number
FROM apt_payments
GROUP BY complex_number, year(payment_date), month(payment_date)
) payments ON payYear = [YEAR] AND payMonth = [MONTH]
AND payments.complex_number = cplx.complex_number
我认为有些事情里这将给你一个所有公寓的清单和他们当月支付的金额。您可以在PHP中循环显示结果,并根据值amtPaid
和rent_total
决定打印任何您想要的内容。
您还可以在查询中输入CASE
声明并检查付款。然后,查询可以简单地返回付费或无偿。 [YEAR]
和[MONTH]
应该被MySQL中的日期调用所取代,或者让PHP将月/年放入查询中。我不想假设你会在哪个月看。
你有什么问题吗? – reggie 2011-03-04 18:20:43