Tidak ada cara bawaan untuk mendapatkan jumlah penyisipan dan pembaruan yang terpisah, tidak. SQL%ROWCOUNT
akan memberi tahu Anda jumlah baris yang digabungkan, seperti yang mungkin sudah Anda ketahui, tetapi tidak ada yang setara untuk mendapatkan nilai terpisah untuk sisipan dan pembaruan.
Artikel ini oleh Adrian Billington menunjukkan cara untuk mendapatkan informasi dengan menyertakan pemanggilan fungsi dalam penggabungan, yang mungkin menambahkan sedikit biaya tambahan.
Ada trik serupa, dan mungkin lebih sederhana, dari MichaelS di forum Oracle
, yang tentu saja tidak bisa saya hargai sama sekali. Saya tergoda untuk mereproduksinya di sini tetapi saya tidak yakin apakah itu diizinkan, tetapi pada dasarnya menggunakan sys_context
untuk mempertahankan hitungan, dengan cara yang hampir sama seperti yang dilakukan solusi Adrian dengan variabel paket. Saya akan menggunakan yang itu, karena lebih bersih dan menurut saya lebih mudah untuk diikuti dan dirawat.
Masih sangat dekat dengan jawaban hanya tautan tetapi saya juga tidak ingin menjiplak karya orang lain...