嵌套循环虽然不同

时间:2012-11-02 20:00:53

标签: mysql loops stored-procedures

我有一张包含以下COLS的表格:State,City,ZIP

我想查找包含相同状态,城市和zip的所有记录以获取某些统计信息。

我的想法是对状态进行明确的查找以在表中构建状态列表,然后使用该状态来识别该状态中的每个城市,然后使用状态和城市的组合来识别zip,最后使用state,city,zip的组合来运行计算。即。计算具有共同状态,城市,zip的所有记录,并确定每个邮政编码的状态记录百分比。

我想创建一个存储过程来遍历整个表,在包含相同状态,城市和zip的每组记录上运行我的计算。

任何定向推动或推动都将非常感激。

1 个答案:

答案 0 :(得分:2)

这个怎么样:

   SELECT COUNT(*) count, SUM(population)  population, state, city, zip
     FROM tab
 GROUP BY state, city, zip WITH ROLLUP

这应该按城市/州/邮编给你记录和人口数量的摘要,并按州/州,州和整体汇总摘要。

这是一个有几个地方的平方米。 http://sqlfiddle.com/#!2/b6c2e/1/0

(我不确定你要处理的是什么统计数据所以我把人口作为猜测。)