Не е вграден начин за отделно вмъкване и актуализиране на броя, не. SQL%ROWCOUNT
ще ви каже броя на обединените редове, както вероятно вече знаете, но няма еквивалент за получаване на отделни стойности за вмъкванията и актуализациите.
Тази статия от Адриан Билингтън показва начин за получаване на информация чрез включване на извикване на функция в сливането, което може да добави малко допълнителни разходи.
Има подобен и може би по-опростен трик от MichaelS във форумите на Oracle
, за което също не мога да си припиша никаква заслуга, разбира се. Изкушавам се да го възпроизведа тук, но не съм сигурен дали това е позволено, но по същество използва sys_context
за поддържане на броя, почти по същия начин, по който решението на Адриан направи с пакетна променлива. Бих използвал този, тъй като е по-чист и мисля, че е по-лесен за следване и поддръжка.
Все още съм опасно близо до отговор само с връзка, но също не искам да плагиатствам работата на другите...