mysql存储过程中处理多条数据

我有两个表,a和b。
a是详细数据,b是统计数据。
现在a中有一个字段Hero,每条数据可能都不一样。
我要写一个存储过程,调用的时候把a中指定ID的Hero的值的统计数据的前三名放到b中的三个字段fav1,fav2,fav3。如果筛选出来的结果小于3个,多余位置就填0。
下面是我写的,已经能够成功筛选出结果,但是我不知道怎么写到另外一个表里
SELECT Hero , COUNT(Hero) FROM a WHERE ID = vID GROUP BY Hero ORDER BY COUNT(Hero) DESC;
在cnblogs一位大侠的帮助下,我完成了这个功能。这个功能的前提是在一个存储过程中完整所有操作,所以下面的回答,并不对。附上我的解决方案。由于字数限制,无法附加代码,只提示可以用CURSOR在存储过程中来一条一条获取数据

插入进另一个表里, SQL语句不是仅仅运用在本表内的,可以多表嵌套 这个不要忽略
温馨提示:答案为网友推荐,仅供参考