आपकी समस्या यह है कि आपके इनपुट पैरामीटर का नाम आपके कॉलम के समान है, इसलिए जब क्वेरी दिखाई देती है
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;