Quite a lot of times, while writing stored procedures, we have to loop thru a set of rows in a (temp) table with a column specifically for "flag" reasons. We use a WHILE loop for this (and some times cursors).
It would be best if we can have a datatype ROW for this purpose. For example:
DECLARE @MyRow ROW
FOR [EACH] @MyRow IN #Employees
PRINT CONVERT(VARCHAR, @MyRow.Age)
Also, a dynamic table:
FOR @MyRow IN (select .... join.... join.... where....) MyTable
Note: The Keyword "EACH" may be optional.