Scotty, You had it nailed! MSSQL doesn't know LIMIT command but my lead programmer had already created a table for counting. It's just a table that holds the numbers 0 to 8000 for various counting purposes so we called it _staticarray since it doesn't change. The name of the field is NUMBER (real ingenious). So, my final query format was just about what you said: select 0 as student_id, '' as first_name, '' as last_name, '' as grade_level, '' as phone_no, '' as address_1, '' as address_2, '' as address_city, '' as address_state, '' as address_zip, '' as address_zip_ext from _staticarray where number < $P{Skip} UNION ALL select sd.student_id, sd.first_name, sd.last_name, se.grade_level, sd.phone_no, sd.address_1, sd.address_2, sd.address_city, sd.address_state, sd.address_zip, sd.address_zip_ext ... So I wanted to thank you for the suggestion. It ended up working out nicely. The solution above is also portable so it's not locked into MSSQL. Thank you and have a great day! Bill