आपकी समस्या यह है कि आपके इनपुट पैरामीटर का नाम आपके कॉलम के समान है, इसलिए जब क्वेरी दिखाई देती है
WHERE SCOTT.EMP.DEPTNO = deptno
यह deptno . की व्याख्या करता है SCOTT.EMP.DEPTNO . के रूप में , जिसका अर्थ है कि यह deptno . के सभी मानों के लिए सही है . अपने इनपुट पैरामीटर का नाम बदलें और क्वेरी उम्मीद के मुताबिक काम करेगी।
आपको NVL . का भी उपयोग करना चाहिए यह सुनिश्चित करने के लिए कि व्यक्तिगत SUM मान NULL नहीं हैं , जैसे कि उनमें से कोई एक NULL है इससे उनका योग हो जाएगा NULL साथ ही यानी
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;