How I would I break a total count query into intervals?
You could potentially do this using ROW_NUMBER.

I'd just advise to steer away from this whole thing, as it's not particularly useful....

If you were to do this, make sure you replace the &lt;some_id&gt; with the Customer ID or similar...

SELECT status, count(*)
FROM
(
  SELECT 
    ROW_NUMBER() OVER(PARTITION BY status ORDER BY &lt;some_id&gt; ASC) rnum,
    status
  FROM customers
) weirdness
GROUP BY status, (rnum-1)/500;