My question is related to the answer found in this post by user Consultuning on Oct 22 \'09 at 18:31: mysql query to dynamically convert row data to columns
The closest thing to "for each" is probably MySQL Procedure using Cursor and LOOP.
In the link you provided, thats not a loop in sql...
thats a loop in programming language
they are first getting list of all distinct districts, and then for each district executing query again.
Not a for each exactly, but you can do nested SQL
SELECT
distinct a.ID,
a.col2,
(SELECT
SUM(b.size)
FROM
tableb b
WHERE
b.id = a.col3)
FROM
tablea a