Masalah Anda adalah parameter input Anda memiliki nama yang sama dengan kolom Anda, jadi ketika kueri melihat
WHERE SCOTT.EMP.DEPTNO = deptno
itu menafsirkan deptno sebagai SCOTT.EMP.DEPTNO , artinya benar untuk semua nilai deptno . Ubah nama parameter input Anda dan kueri akan berfungsi seperti yang diharapkan.
Anda juga harus menggunakan NVL untuk memastikan bahwa individu SUM nilai bukan NULL , seolah-olah salah satunya adalah NULL yang akan membuat jumlah mereka NULL juga yaitu
select NVL(SUM(SAL), 0) INTO SALSUM FROM SCOTT.EMP WHERE SCOTT.EMP.DEPTNO = numerdept;
select NVL(SUM(COMM), 0) INTO COMMSUM FROM SCOTT.EMP WHERE SCOTT.EMP.DEPTNO = numerdept;