Представьте, что я владелец множества книжных магазинов. Я веду базу данных обо всех событиях, происходящих во всех моих многочисленных книжных магазинах. Следует отметить два события: «Книга добавлена» и «Книга удалена», когда книга добавляется в инвентарь истории и когда она продается в магазине. Примером схемы может быть bookstore_id
, event_name
, `время.
Теперь предположим, что у меня есть вторая таблица, которая поддерживает текущее состояние каждого книжного магазина, поэтому схема будет bookstore_id
, num_books
.
Я хочу иметь возможность использовать первую таблицу, чтобы получить количество всех событий «Добавлена книга» для книжного магазина, вычесть количество всех событий «Книга удалена» для книжного магазина, а затем обновить количество книг в каждом книжном магазине в второй стол.
Единственный способ, которым я могу это сделать, требует использования курсора, но я предполагаю, что есть более «SQL-подобный» способ сделать это, который более основан на наборах и не требует курсора.