0
我试图选择所有区域并加入这些区域的交易...此查询返回0个结果,当我验证了我的数据与我期望得到的结果相匹配时...有没有人看到有什么明显的错误?查询未返回预期结果
SELECT
deal.*,
area.id AS area_id
FROM area
INNER JOIN account_areas ON (
account_areas.account_id = 1 AND
account_areas.area_id = area.id
)
JOIN deal ON (
deal.area_id = area.id AND
deal.site_id = 1 AND
DAYOFYEAR(deal.created) = DAYOFYEAR(NOW()) AND
deal.end >= NOW()
)
ORDER BY area.name ASC
这个想法是,我想拉取某个区域的所有交易,但是如果没有交易,仍然在结果查询中有该区域。有交易
account
---------------------------------
| id | email |
---------------------------------
| 1 | test_test.com |
---------------------------------
account_areas
------------------------
| account_id | area_id |
------------------------
| 1 | 81 |
| 1 | 42 |
------------------------
deal
--------------------------------------------------------
| id | area_id | Title |
--------------------------------------------------------
| 1 | 81 | Test Title |
--------------------------------------------------------
预期结果:
id | area_id | title
预期结果没有一个交易
area_id
你能否提供所涉及表的摘录?这样我们可以重新创建您正在使用的数据库(或其中的一部分)并开始对查询进行故障排除。此外,你是否能够通过两个JOIN中的一个获得任何结果?就像INNER JOIN自己的工作一样吗?或者“JOIN交易”? –
当你的问题涉及*“不是预期的结果”*时,你应该总是发布你期望的结果......当然,你必须提供尽可能多的信息来帮助回答它。 – netcoder