Understand While Loop in SQL

To answer the original question, the TOP 500 will always be different (in this case) because you've deleted the 500 rows you've just selected.