我有一个MySQL表与社区及其相应的MLS地图区域。有些社区很大,占用多个地图区域。MySQL子查询不返回预期结果
我试图做一个查询,返回最常见的社区和他们的地图区域时,通过多个地图区域。
我试图在地图领域的601和606的查询是:
SELECT DISTINCT(community), mapArea FROM (
SELECT community, mapArea
FROM single_family
GROUP BY community
ORDER BY COUNT(community) DESC) AS query1
WHERE mapArea LIKE '601%' OR mapArea LIKE '606%' ORDER BY community
例single_family表布局(实际的表已超过60K行):
community mapArea
Solera 606 - Henderson
Solera 606 - Henderson
Solera 204 - East
Solera 606 - Henderson
Solera 202 - East
Anthem 606 - Henderson
Green Valley 601 - Henderson
Green Valley 601 - Henderson
Green Valley 606 - Henderson
Seven Hills 606 - Henderson
Seven Hills 606 - Henderson
如果我上运行的计数它显示的表格:
community mapArea countCommunity
Anthem 606 - Henderson 776
Solera 606 - Henderson 58
Solera 204 - East 6
Solera 202 - East 1
Green Valley 601 - Henderson 188
Green Valley 606 - Henderson 117
Seven Hills 606 - Henderson 372
当我运行上述查询地图区域601和606我得到以下whi CH是一些群落正确的,但索莱拉的例如社区未列出:
community mapArea
Anthem 606 - Henderson
Green Valley 601 - Henderson
Seven Hills 606 - Henderson
由于索莱拉与地图面积为606最行 - 亨德森,我想知道什么是错在查询为何它没有被包括在内。
任何帮助,为什么这不是返回预期的结果,我必须做什么才能获得预期的结果,非常感谢。
谢谢。您的查询现在显示Solera社区,但是如果我搜索'mapArea'' 204 - East',它也会显示出来,我不想要。我遇到了这个问题,其中'community'处于不同的'mapAreas'中。由于'Solera'有'606 - Henderson'最多的行,我只希望它显示为606的搜索。 – xrjohn
尝试添加HAVING mapArea LIKE'601%'或mapArea LIKE'606%'组后 – Smokie
我添加了' HAVING mapArea..',它返回了与Solera在606,204和202中显示的相同结果。然后,我删除了WHERE子句,然后返回与原始查询相同的问题,Solera没有在606中显示。 – xrjohn