• Nice out-of-the-box thinking. Initially I didn't have a clue where it was going.

    You can probably speed this up for tables with many rows by having an indexed modified date in the Region and Office tables and using that in the WHERE clauses of two similar views: one that deals with recently changed Regions and one that deals with recently changed Offices (or just one view if SQL Server is smart enough in dealing with an OR between the two indexed modified date columns). That way you only need to join and check recently modified Regions and Offices instead of all of them.