>No, because if there are only 3 records in the returned recordset a SELECT TOP 7 will still only return you 3 records. A good try though; I hadn't thought about using TOP.
Well, I was thinking about the UNION query I suggested in my initial post. So the query would look something like this:
SELECT * FROM MyTable
UNION ALL
SELECT TOP 10 * From MyCopy;
The trick is to obtain the number of rows returned by the first query, probably doable with Select Count(*) with the same WHERE condition.