Question: Creating a list of monomials with order <= n

I want to produce a list with oder by total degree, of monomials in several variables

i.e. {1, x, y, x^2, y^2, xy} would be the list or all monomials in the variables x and y with total degree <=2,

currently i can produce a list using a loop command that gives me the set

U:=(seq(seq((x^n)*(y^m), n=0..2),m=0..2));

which returns the list

U=1, x, x^2, y, xy, x^2y, y^2, xy^2, x^2y^2

which has terms that i do not require i.e.  x^2y, xy^2, x^2y^2 as they have total degree >2.

Help with a code to produce this for this example or for the general n case would be greatly appreciated.

Please Wait...