Yes a sub-query or nested (not sure about the difference), after the rows from this month are selected, I would like to set the number of rows to be selected to be equal to a value a get from a "count()" and this value might need to be rounded of to a to one significant number or whole number ie.40.5 = 41 etc.
Dunno about a sub-query for this specific instance, but you can put it into a stored proc, and assign the count to a variable, which can then be used in a SELECT TOP @counter * FROM statement.
You can use the CEILING() keyword to round the value up if needed.