Really, a better solution might be to spew the results into another table and then schedule downtime and replace the original table (via rename or whatever).
It all depends on your database, which is why you need an actual DBA role on your team instead of just using your database like an abstract storage entity.