тут вопрос не в кейсе, а как организовать нормально. можно заливать в базу каждый день полный дамп (сколько это занимает времени?), потом оставлять его как актуальное состояние, считать дифф с предыдущим днем, диффы откладывать в еще одну табличку с датой в ключе. возможно залить первый дамп в диффы в виде добавлений, чтобы он тоже был,
это уже будет содержать примерно все нужные данные, и расти только на дифф. full outer join для диффа возможно работать не будет, тогда надо будет что-то изобретать, например посемплировать по хешу.