我有一个sql查询,我想添加另一个条件,但我似乎无法得到它的工作。该查询很简单:mySQL查询得到的记录不匹配
SELECT DISTINCT monthly_returns.company_id
FROM monthly_returns, paidreturns
WHERE monthly_returns.company_id = paidreturns.company_id
AND paidreturns.month = '$cdate'
AND paidreturns.paid =0
但是我想从那些尚未在paidreturns对于给定日期的所有记录monthly_returns得到记录也。我知道这将是这样的
SELECT *
FROM monthly_returns
WHERE monthly_returns NOT IN (SELECT * FROM paidreturns WHERE paidreturns.month = '$cdate')
paidreturns.paid = 0时,由票据尚未支付,但如果同样存在于paidreturns该日期,然后该法案也没有支付任何记录。
架构
paidreturns表
-id
-company_id
-paid
个月的
-total
monthly_returns表
-id
-company_id
-wage_totals
个月的
您可能会考虑使用'LEFT JOIN'将'paidreturns'加入'monthly_returns'。无论“paidreturns”中是否有匹配的行,这将返回所有'monthly_returns'。 http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins – showdev 2013-04-23 21:02:27