所以我正在处理一个需要GROUP BY this 的特殊代码,然后回显每个结果组中的每个项目。
SELECT * FROM `geo` GROUP BY city ORDER BY visaid DESC"
从这里,我迷路了。尝试使用:
SELECT name, COUNT(city) FROM `geo` GROUP BY city ORDER BY visaid DESC
它不会返回每个,而是返回每个组的计数总数。 但是,需要遍历群集结果并显示每个组的每一行。例如:
NEW YORK
Brad, visaid, expired
Gina, visaid, 1 month
Sam, visaid, 1 week
LONDON
Edward
Patricia
如果不运行多个查询,如何实现这一目标?
答案 0 :(得分:2)
由于您将问题标记为PHP,因此可以使用PHP来帮助解决此问题。
不要使用GROUP BY
,只需执行ORDER BY city, visaid DESC
,然后在查看结果时,会有一个跟踪最后一行城市的变量,当它与当前行的城市不同时,会回显城市名称。
答案 1 :(得分:1)
<强>解决强>
对于任何感兴趣的人,我设法使用单个重新查询来实现所需的结果。
SELECT * FROM `geo` GROUP BY city
然后是第二个查询
SELECT * FROM `geo` WHERE city='' ORDER BY visaid DESC